From c4abe227441b2138ee7967bd9d020d61a24a7c30 Mon Sep 17 00:00:00 2001
From: Bob Mottram <bob@robotics.uk.to>
Date: Wed, 6 Jul 2016 20:06:57 +0100
Subject: [PATCH] Move apps into share directory

---
 Makefile                       |  2 ++
 src/freedombone-mesh-install   | 66 ++++++----------------------------
 src/freedombone-mirrors        |  2 +-
 src/freedombone-tests          |  6 +---
 src/freedombone-utils-selector |  4 +--
 src/freedombone-utils-setup    |  8 ++---
 src/freedombone-vars           |  4 +--
 7 files changed, 22 insertions(+), 70 deletions(-)

diff --git a/Makefile b/Makefile
index efb4ad066..ab9f1ad10 100644
--- a/Makefile
+++ b/Makefile
@@ -16,6 +16,7 @@ source:
 	gzip -f9n ../${APP}_${VERSION}.orig.tar
 install:
 	mkdir -p ${DESTDIR}${PREFIX}/bin
+	mkdir -p ${DESTDIR}/usr/share/${APP}/apps
 	mkdir -p ${DESTDIR}/etc/${APP}
 	cp -r image_build/* ${DESTDIR}/etc/${APP}
 	install -m 755 img/backgrounds/${APP}_mesh_background.png ${DESTDIR}${PREFIX}/share
@@ -27,6 +28,7 @@ install:
 	install -m 755 src/${APP}-backup-local ${DESTDIR}${PREFIX}/bin/backup2friends
 	install -m 755 src/${APP}-restore-local ${DESTDIR}${PREFIX}/bin/restore
 	install -m 755 src/${APP}-restore-remote ${DESTDIR}${PREFIX}/bin/restorefromfriend
+	mv ${DESTDIR}${PREFIX}/bin/${APP}-app-* ${DESTDIR}/usr/share/${APP}/apps
 	mkdir -m 755 -p ${DESTDIR}${PREFIX}/share/man/man1
 	install -m 644 man/*.1.gz ${DESTDIR}${PREFIX}/share/man/man1
 	install -m 644 man/${APP}-backup-local.1.gz ${DESTDIR}${PREFIX}/share/man/man1/backup.1.gz
diff --git a/src/freedombone-mesh-install b/src/freedombone-mesh-install
index 50ca7e84c..66c581277 100755
--- a/src/freedombone-mesh-install
+++ b/src/freedombone-mesh-install
@@ -446,11 +446,7 @@ function mesh_tox_node_remove {
 
 function mesh_tox_node {
 	# obtain commits from the main file
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOXCORE_COMMIT_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOXCORE_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
-	else
-		TOXCORE_COMMIT_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOXCORE_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
-	fi
+	TOXCORE_COMMIT_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOXCORE_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
 	if [ ${#TOXCORE_COMMIT_MAIN} -gt 10 ]; then
 		TOXCORE_COMMIT=$TOXCORE_COMMIT_MAIN
 	fi
@@ -459,11 +455,7 @@ function mesh_tox_node {
 		exit 76325
 	fi
 
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOXID_REPO_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOXID_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	else
-		TOXID_REPO_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOXID_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	fi
+	TOXID_REPO_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOXID_REPO=" | head -n 1 | awk -F '"' '{print $2}')
 	if [ ${#TOXID_REPO_MAIN} -gt 5 ]; then
 		TOXID_REPO=$TOXID_REPO_MAIN
 	fi
@@ -472,11 +464,7 @@ function mesh_tox_node {
 		exit 78252
 	fi
 
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOX_PORT_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOX_PORT=" | head -n 1 | awk -F '=' '{print $2}')
-	else
-		TOX_PORT_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOX_PORT=" | head -n 1 | awk -F '=' '{print $2}')
-	fi
+	TOX_PORT_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOX_PORT=" | head -n 1 | awk -F '=' '{print $2}')
 	if [ ${#TOX_PORT_MAIN} -gt 2 ]; then
 		TOX_PORT=$TOX_PORT_MAIN
 	fi
@@ -485,11 +473,7 @@ function mesh_tox_node {
 		exit 32856
 	fi
 
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOXCORE_REPO_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOXCORE_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	else
-		TOXCORE_REPO_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOXCORE_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	fi
+	TOXCORE_REPO_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOXCORE_REPO=" | head -n 1 | awk -F '"' '{print $2}')
 	if [ ${#TOXCORE_REPO_MAIN} -gt 10 ]; then
 		TOXCORE_REPO=$TOXCORE_REPO_MAIN
 	fi
@@ -595,27 +579,15 @@ function mesh_tox_client_remove {
 }
 
 function mesh_tox_client {
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOXIC_FILE=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_FILE=" | head -n 1 | awk -F '=' '{print $2}')
-	else
-		TOXIC_FILE=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_FILE=" | head -n 1 | awk -F '=' '{print $2}')
-	fi
+	TOXIC_FILE=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOXIC_FILE=" | head -n 1 | awk -F '=' '{print $2}')
 
 	# obtain commits from the main file
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOXIC_COMMIT_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
-	else
-		TOXIC_COMMIT_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
-	fi
+	TOXIC_COMMIT_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOXIC_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
 	if [ ${#TOXIC_COMMIT_MAIN} -gt 10 ]; then
 		TOXIC_COMMIT=$TOXIC_COMMIT_MAIN
 	fi
 
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOXIC_REPO_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	else
-		TOXIC_REPO_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	fi
+	TOXIC_REPO_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOXIC_REPO=" | head -n 1 | awk -F '"' '{print $2}')
 	if [ ${#TOXIC_REPO_MAIN} -gt 5 ]; then
 		TOXIC_REPO=$TOXIC_REPO_MAIN
 	fi
@@ -684,11 +656,7 @@ function mesh_zeronet_remove {
 
 function mesh_zeronet {
 	# obtain commits from the main file
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		ZERONET_COMMIT_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-zeronet | grep "ZERONET_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
-	else
-		ZERONET_COMMIT_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-zeronet | grep "ZERONET_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
-	fi
+	ZERONET_COMMIT_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-zeronet | grep "ZERONET_COMMIT=" | head -n 1 | awk -F "'" '{print $2}')
 	if [ ${#ZERONET_COMMIT_MAIN} -gt 10 ]; then
 		ZERONET_COMMIT=$ZERONET_COMMIT_MAIN
 	fi
@@ -697,11 +665,7 @@ function mesh_zeronet {
 		exit 37046
 	fi
 
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		ZERONET_REPO_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-zeronet | grep "ZERONET_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	else
-		ZERONET_REPO_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-zeronet | grep "ZERONET_REPO=" | head -n 1 | awk -F '"' '{print $2}')
-	fi
+	ZERONET_REPO_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-zeronet | grep "ZERONET_REPO=" | head -n 1 | awk -F '"' '{print $2}')
 	if [ ${#ZERONET_REPO_MAIN} -gt 5 ]; then
 		ZERONET_REPO=$ZERONET_REPO_MAIN
 	fi
@@ -710,11 +674,7 @@ function mesh_zeronet {
 		exit 37046
 	fi
 
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		ZERONET_PORT_MAIN=$(cat /usr/local/bin/${PROJECT_NAME}-app-zeronet | grep "ZERONET_PORT=" | head -n 1 | awk -F '=' '{print $2}')
-	else
-		ZERONET_PORT_MAIN=$(cat /usr/bin/${PROJECT_NAME}-app-zeronet | grep "ZERONET_PORT=" | head -n 1 | awk -F '=' '{print $2}')
-	fi
+	ZERONET_PORT_MAIN=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-zeronet | grep "ZERONET_PORT=" | head -n 1 | awk -F '=' '{print $2}')
 	if [ ${#ZERONET_PORT_MAIN} -gt 1 ]; then
 		ZERONET_PORT=$ZERONET_PORT_MAIN
 	fi
@@ -796,11 +756,7 @@ function mesh_zeronet {
 }
 
 function install_batman_client {
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		TOXIC_FILE=$(cat /usr/local/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_FILE=" | head -n 1 | awk -F '=' '{print $2}')
-	else
-		TOXIC_FILE=$(cat /usr/bin/${PROJECT_NAME}-app-tox | grep "TOXIC_FILE=" | head -n 1 | awk -F '=' '{print $2}')
-	fi
+	TOXIC_FILE=$(cat /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-tox | grep "TOXIC_FILE=" | head -n 1 | awk -F '=' '{print $2}')
 
 	if [ ! -f ${rootdir}/tmp/meshtype ]; then
 		$CHROOT_PREFIX sudo apt-get -y install iproute bridge-utils libnetfilter-conntrack3 batctl
diff --git a/src/freedombone-mirrors b/src/freedombone-mirrors
index 26c4e5f82..f9d1b9406 100755
--- a/src/freedombone-mirrors
+++ b/src/freedombone-mirrors
@@ -58,7 +58,7 @@ if [ ! -f $MAIN_COMMAND ]; then
     MAIN_COMMAND=/usr/bin/${PROJECT_NAME}
 fi
 
-REPOS=($(cat ${MAIN_COMMAND} ${MAIN_COMMAND}-utils-* ${MAIN_COMMAND}-app-* | grep "_REPO=\"" | uniq -u | sed 's|${PROJECT_NAME}|'"${PROJECT_NAME}"'|g'))
+REPOS=($(cat ${MAIN_COMMAND} ${MAIN_COMMAND}-utils-* /usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-* | grep "_REPO=\"" | uniq -u | sed 's|${PROJECT_NAME}|'"${PROJECT_NAME}"'|g'))
 
 
 # obtain the mirrors password if it exists
diff --git a/src/freedombone-tests b/src/freedombone-tests
index 0b6b5538d..521bdebea 100755
--- a/src/freedombone-tests
+++ b/src/freedombone-tests
@@ -58,11 +58,7 @@ function test_app_function_type {
 }
 
 function test_app_functions {
-	if [ -f /usr/local/bin/${PROJECT_NAME} ]; then
-		FILES=/usr/local/bin/${PROJECT_NAME}-app-*
-	else
-		FILES=/usr/bin/${PROJECT_NAME}-app-*
-	fi
+	FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
 
 	# check that these functions exist
 	interface_functions=( install remove backup_local backup_remote upgrade )
diff --git a/src/freedombone-utils-selector b/src/freedombone-utils-selector
index 089e9d72d..b72f85deb 100755
--- a/src/freedombone-utils-selector
+++ b/src/freedombone-utils-selector
@@ -65,7 +65,7 @@ function get_apps_installed {
 }
 
 function detect_apps {
-	FILES=$PROJECT_INSTALL_DIR/${PROJECT_NAME}-app-*
+	FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
 
 	APPS_AVAILABLE=()
 	APPS_CHOSEN=()
@@ -89,7 +89,7 @@ function detect_apps {
 function choose_apps_for_variant {
 	variant_name="$1"
 
-	FILES=$PROJECT_INSTALL_DIR/${PROJECT_NAME}-app-*
+	FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
 
 	APPS_AVAILABLE=()
 	APPS_CHOSEN=()
diff --git a/src/freedombone-utils-setup b/src/freedombone-utils-setup
index 2ef5c4565..1c7ffc7c7 100755
--- a/src/freedombone-utils-setup
+++ b/src/freedombone-utils-setup
@@ -236,10 +236,8 @@ function remove_default_user {
 }
 
 function upgrade_installation {
-    if [ ! -d /usr/share/${PROJECT_NAME}/apps ]; then
-        mkdir -p /usr/share/${PROJECT_NAME}/apps
-    fi
-    mv /usr/local/bin/${PROJECT_NAME}-app-* /usr/share/${PROJECT_NAME}/apps
+	# TODO
+	echo ''
 }
 
 function setup_firewall {
@@ -249,7 +247,7 @@ function setup_firewall {
     configure_firewall_for_avahi
 }
 
-function setup_utils {  
+function setup_utils {
     read_configuration
     upgrade_installation
     set_default_onion_domains
diff --git a/src/freedombone-vars b/src/freedombone-vars
index f95c4514d..69fe7bb23 100755
--- a/src/freedombone-vars
+++ b/src/freedombone-vars
@@ -88,8 +88,8 @@ do
 done
 
 #include apps
-APP_FILES=$PROJECT_INSTALL_DIR/${PROJECT_NAME}-app-*
-for f in $UTILS_FILES
+APP_FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
+for f in $APP_FILES
 do
   source $f
 done
-- 
GitLab