Bob Mottram 8 лет назад
Родитель
Сommit
ed0e6be64e
1 измененных файлов: 110 добавлений и 105 удалений
  1. 110
    105
      src/freedombone-utils-selector

+ 110
- 105
src/freedombone-utils-selector Просмотреть файл

@@ -41,137 +41,142 @@ APPS_CHOSEN=()
41 41
 APPS_INSTALLED_NAMES=()
42 42
 
43 43
 function item_in_array {
44
-	local e
45
-	for e in "${@:2}"; do [[ "$e" == "$1" ]] && return 0; done
46
-	return 1
44
+    local e
45
+    for e in "${@:2}"; do [[ "$e" == "$1" ]] && return 0; done
46
+    return 1
47 47
 }
48 48
 
49 49
 function app_is_installed {
50
-	app_name="$1"
51
-	if [ ! -f $COMPLETION_FILE ]; then
52
-		echo "0"
53
-		return
54
-	fi
55
-
56
-	if ! grep -Fxq "install_${app_name}" $COMPLETION_FILE; then
57
-		echo "0"
58
-	else
59
-		echo "1"
60
-	fi
50
+    app_name="$1"
51
+    if [ ! -f $COMPLETION_FILE ]; then
52
+        echo "0"
53
+        return
54
+    fi
55
+
56
+    if ! grep -Fxq "install_${app_name}" $COMPLETION_FILE; then
57
+        echo "0"
58
+    else
59
+        echo "1"
60
+    fi
61 61
 }
62 62
 
63 63
 function get_apps_installed {
64
-	for a in "${APPS_AVAILABLE[@]}"
65
-	do
66
-		APPS_INSTALLED+=("$(app_is_installed $a)")
67
-	done
64
+    for a in "${APPS_AVAILABLE[@]}"
65
+    do
66
+        APPS_INSTALLED+=("$(app_is_installed $a)")
67
+    done
68 68
 }
69 69
 
70 70
 function get_apps_installed_names {
71
-	APPS_INSTALLED_NAMES=()
72
-	for a in "${APPS_AVAILABLE[@]}"
73
-	do
74
-		if [[ $(app_is_installed $a) == "1" ]]; then
75
-			APPS_INSTALLED_NAMES+=("$a")
76
-		fi
77
-	done
71
+    APPS_INSTALLED_NAMES=()
72
+    for a in "${APPS_AVAILABLE[@]}"
73
+    do
74
+        if [[ $(app_is_installed $a) == "1" ]]; then
75
+            APPS_INSTALLED_NAMES+=("$a")
76
+        fi
77
+    done
78 78
 }
79 79
 
80 80
 function detect_apps {
81
-	FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
82
-
83
-	APPS_AVAILABLE=()
84
-	APPS_CHOSEN=()
85
-
86
-	# for all the app scripts
87
-	for filename in $FILES
88
-	do
89
-		app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
90
-		if [[ $(item_in_array ${app_name} ${APPS_AVAILABLE[@]}) != 0 ]]; then
91
-			APPS_AVAILABLE+=("${app_name}")
92
-			APPS_CHOSEN+=("0")
93
-		fi
94
-	done
95
-
96
-	function_check get_apps_installed
97
-	get_apps_installed
98
-	get_apps_installed_names
81
+    FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
82
+
83
+    APPS_AVAILABLE=()
84
+    APPS_CHOSEN=()
85
+
86
+    # for all the app scripts
87
+    for filename in $FILES
88
+    do
89
+        app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
90
+        if [[ $(item_in_array ${app_name} ${APPS_AVAILABLE[@]}) != 0 ]]; then
91
+            APPS_AVAILABLE+=("${app_name}")
92
+            APPS_CHOSEN+=("0")
93
+        fi
94
+    done
95
+
96
+    function_check get_apps_installed
97
+    get_apps_installed
98
+    get_apps_installed_names
99 99
 }
100 100
 
101 101
 # creates the APPS_AVAILABLE and APPS_CHOSEN arrays based on
102 102
 # the given variant name
103 103
 function choose_apps_for_variant {
104
-	variant_name="$1"
105
-
106
-	FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
107
-
108
-	APPS_AVAILABLE=()
109
-	APPS_CHOSEN=()
110
-
111
-	# for all the app scripts
112
-	for filename in $FILES
113
-	do
114
-		app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
115
-		if [[ $(item_in_array ${app_name} ${APPS_AVAILABLE[@]}) != 0 ]]; then
116
-			APPS_AVAILABLE+=("${app_name}")
117
-
118
-			if grep -q "VARIANTS=" ${filename}; then
119
-				variants_list="$(cat ${filename} | grep "VARIANTS=" | awk -F '=' '{print $2}' | awk -F "'" '{print $2}')"
120
-				if [[ "${variants_list}" == 'all' || "${variants_list}" == "$variant_name "* || "${variants_list}" == *" $variant_name "* || "${variants_list}" == *" $variant_name" ]]; then
121
-					APPS_CHOSEN+=("1")
122
-				else
123
-					APPS_CHOSEN+=("0")
124
-				fi
125
-			else
126
-				APPS_CHOSEN+=("0")
127
-			fi
128
-
129
-		fi
130
-	done
131
-
132
-	function_check get_apps_installed
133
-	get_apps_installed
104
+    variant_name="$1"
105
+
106
+    FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
107
+
108
+    APPS_AVAILABLE=()
109
+    APPS_CHOSEN=()
110
+
111
+    # for all the app scripts
112
+    for filename in $FILES
113
+    do
114
+        app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
115
+        if [[ $(item_in_array ${app_name} ${APPS_AVAILABLE[@]}) != 0 ]]; then
116
+            APPS_AVAILABLE+=("${app_name}")
117
+
118
+            if grep -q "VARIANTS=" ${filename}; then
119
+                variants_list="$(cat ${filename} | grep "VARIANTS=" | awk -F '=' '{print $2}' | awk -F "'" '{print $2}')"
120
+                if [[ "${variants_list}" == 'all' || \
121
+                      "${variants_list}" == 'any' || \
122
+                      "${variants_list}" == 'full' || \
123
+                      "${variants_list}" == "$variant_name "* || \
124
+                      "${variants_list}" == *" $variant_name "* || \
125
+                      "${variants_list}" == *" $variant_name" ]]; then
126
+                    APPS_CHOSEN+=("1")
127
+                else
128
+                    APPS_CHOSEN+=("0")
129
+                fi
130
+            else
131
+                APPS_CHOSEN+=("0")
132
+            fi
133
+
134
+        fi
135
+    done
136
+
137
+    function_check get_apps_installed
138
+    get_apps_installed
134 139
 }
135 140
 
136 141
 function list_chosen_apps {
137
-	app_index=0
138
-	for a in "${APPS_AVAILABLE[@]}"
139
-	do
140
-		if [[ ${APPS_CHOSEN[$app_index]} == "1" ]]; then
141
-			echo $"${a}"
142
-		fi
143
-		app_index=$[app_index+1]
144
-	done
142
+    app_index=0
143
+    for a in "${APPS_AVAILABLE[@]}"
144
+    do
145
+        if [[ ${APPS_CHOSEN[$app_index]} == "1" ]]; then
146
+            echo $"${a}"
147
+        fi
148
+        app_index=$[app_index+1]
149
+    done
145 150
 }
146 151
 
147 152
 function remove_apps {
148
-	app_index=0
149
-	for a in "${APPS_AVAILABLE[@]}"
150
-	do
151
-		if [[ ${APPS_INSTALLED[$app_index]} == "1" ]]; then
152
-			if [[ ${APPS_CHOSEN[$app_index]} == "0" ]]; then
153
-				echo $"Removing application: ${a}"
154
-				remove_${a}
155
-				echo $"${a} was removed"
156
-			fi
157
-		fi
158
-		app_index=$[app_index+1]
159
-	done
153
+    app_index=0
154
+    for a in "${APPS_AVAILABLE[@]}"
155
+    do
156
+        if [[ ${APPS_INSTALLED[$app_index]} == "1" ]]; then
157
+            if [[ ${APPS_CHOSEN[$app_index]} == "0" ]]; then
158
+                echo $"Removing application: ${a}"
159
+                remove_${a}
160
+                echo $"${a} was removed"
161
+            fi
162
+        fi
163
+        app_index=$[app_index+1]
164
+    done
160 165
 }
161 166
 
162 167
 function install_apps {
163
-	app_index=0
164
-	for a in "${APPS_AVAILABLE[@]}"
165
-	do
166
-		if [[ ${APPS_INSTALLED[$app_index]} == "0" ]]; then
167
-			if [[ ${APPS_CHOSEN[$app_index]} == "1" ]]; then
168
-				echo $"Installing application: ${a}"
169
-				install_${a}
170
-				echo $"${a} was installed"
171
-			fi
172
-		fi
173
-		app_index=$[app_index+1]
174
-	done
168
+    app_index=0
169
+    for a in "${APPS_AVAILABLE[@]}"
170
+    do
171
+        if [[ ${APPS_INSTALLED[$app_index]} == "0" ]]; then
172
+            if [[ ${APPS_CHOSEN[$app_index]} == "1" ]]; then
173
+                echo $"Installing application: ${a}"
174
+                install_${a}
175
+                echo $"${a} was installed"
176
+            fi
177
+        fi
178
+        app_index=$[app_index+1]
179
+    done
175 180
 }
176 181
 
177 182
 # NOTE: deliberately no exit 0