Bob Mottram 8 years ago
parent
commit
acd8a706d8

+ 1
- 0
src/freedombone View File

@@ -252,6 +252,7 @@ function parse_args {
252 252
     read_config_param 'DEFAULT_DOMAIN_NAME'
253 253
     read_config_param 'MY_USERNAME'
254 254
     read_config_param 'SYSTEM_TYPE'
255
+    read_config_param 'ONION_ONLY'
255 256
 
256 257
     if [ ! -d /home/$MY_USERNAME ]; then
257 258
         echo $"There is no user '$MY_USERNAME' on the system. Use 'adduser $MY_USERNAME' to create the user."

+ 3
- 15
src/freedombone-app-blog View File

@@ -165,21 +165,9 @@ function install_interactive_blog {
165 165
             fi
166 166
         done
167 167
 
168
-        if grep -q "MY_BLOG_TITLE=" $CONFIGURATION_FILE; then
169
-            sed -i "s|MY_BLOG_TITLE=.*|MY_BLOG_TITLE=$MY_BLOG_TITLE|g" $CONFIGURATION_FILE
170
-        else
171
-            echo "MY_BLOG_TITLE=$MY_BLOG_TITLE" >> $CONFIGURATION_FILE
172
-        fi
173
-        if grep -q "FULLBLOG_DOMAIN_NAME=" $CONFIGURATION_FILE; then
174
-            sed -i "s|FULLBLOG_DOMAIN_NAME=.*|FULLBLOG_DOMAIN_NAME=$FULLBLOG_DOMAIN_NAME|g" $CONFIGURATION_FILE
175
-        else
176
-            echo "FULLBLOG_DOMAIN_NAME=$FULLBLOG_DOMAIN_NAME" >> $CONFIGURATION_FILE
177
-        fi
178
-        if grep -q "FULLBLOG_CODE=" $CONFIGURATION_FILE; then
179
-            sed -i "s|FULLBLOG_CODE=.*|FULLBLOG_CODE=$FULLBLOG_CODE|g" $CONFIGURATION_FILE
180
-        else
181
-            echo "FULLBLOG_CODE=$FULLBLOG_CODE" >> $CONFIGURATION_FILE
182
-        fi
168
+        write_config_param "MY_BLOG_TITLE" "$MY_BLOG_TITLE"
169
+        write_config_param "FULLBLOG_DOMAIN_NAME" "$FULLBLOG_DOMAIN_NAME"
170
+        write_config_param "FULLBLOG_CODE" "$FULLBLOG_CODE"
183 171
     fi
184 172
 }
185 173
 

+ 4
- 20
src/freedombone-app-gnusocial View File

@@ -165,26 +165,10 @@ function install_interactive_gnusocial {
165 165
             fi
166 166
         done
167 167
         # save the results in the config file
168
-        if grep -q "MICROBLOG_DOMAIN_NAME=" $CONFIGURATION_FILE; then
169
-            sed -i "s|MICROBLOG_DOMAIN_NAME=.*|MICROBLOG_DOMAIN_NAME=$MICROBLOG_DOMAIN_NAME|g" $CONFIGURATION_FILE
170
-        else
171
-            echo "MICROBLOG_DOMAIN_NAME=$MICROBLOG_DOMAIN_NAME" >> $CONFIGURATION_FILE
172
-        fi
173
-        if grep -q "MICROBLOG_CODE=" $CONFIGURATION_FILE; then
174
-            sed -i "s|MICROBLOG_CODE=.*|MICROBLOG_CODE=$MICROBLOG_CODE|g" $CONFIGURATION_FILE
175
-        else
176
-            echo "MICROBLOG_CODE=$MICROBLOG_CODE" >> $CONFIGURATION_FILE
177
-        fi
178
-        if grep -q "MICROBLOG_WELCOME_MESSAGE=" $CONFIGURATION_FILE; then
179
-            sed -i "s|MICROBLOG_WELCOME_MESSAGE=.*|MICROBLOG_WELCOME_MESSAGE=$MICROBLOG_WELCOME_MESSAGE|g" $CONFIGURATION_FILE
180
-        else
181
-            echo "MICROBLOG_WELCOME_MESSAGE=$MICROBLOG_WELCOME_MESSAGE" >> $CONFIGURATION_FILE
182
-        fi
183
-        if grep -q "MICROBLOG_BACKGROUND_IMAGE_URL=" $CONFIGURATION_FILE; then
184
-            sed -i "s|MICROBLOG_BACKGROUND_IMAGE_URL=.*|MICROBLOG_BACKGROUND_IMAGE_URL=$MICROBLOG_BACKGROUND_IMAGE_URL|g" $CONFIGURATION_FILE
185
-        else
186
-            echo "MICROBLOG_BACKGROUND_IMAGE_URL=$MICROBLOG_BACKGROUND_IMAGE_URL" >> $CONFIGURATION_FILE
187
-        fi
168
+        write_config_param "MICROBLOG_DOMAIN_NAME" "$MICROBLOG_DOMAIN_NAME"
169
+        write_config_param "MICROBLOG_CODE" "$MICROBLOG_CODE"
170
+        write_config_param "MICROBLOG_WELCOME_MESSAGE" "$MICROBLOG_WELCOME_MESSAGE"
171
+        write_config_param "MICROBLOG_BACKGROUND_IMAGE_URL" "$MICROBLOG_BACKGROUND_IMAGE_URL"
188 172
     fi
189 173
 }
190 174
 

+ 2
- 10
src/freedombone-app-gogs View File

@@ -104,16 +104,8 @@ function install_interactive_gogs {
104 104
         done
105 105
 
106 106
         # save the results in the config file
107
-        if grep -q "GIT_DOMAIN_NAME=" ${CONFIGURATION_FILE}; then
108
-            sed -i "s|GIT_DOMAIN_NAME=.*|GIT_DOMAIN_NAME=$GIT_DOMAIN_NAME|g" ${CONFIGURATION_FILE}
109
-        else
110
-            echo "GIT_DOMAIN_NAME=$GIT_DOMAIN_NAME" >> ${CONFIGURATION_FILE}
111
-        fi
112
-        if grep -q "GIT_CODE=" ${CONFIGURATION_FILE}; then
113
-            sed -i "s|GIT_CODE=.*|GIT_CODE=$GIT_CODE|g" ${CONFIGURATION_FILE}
114
-        else
115
-            echo "GIT_CODE=$GIT_CODE" >> ${CONFIGURATION_FILE}
116
-        fi
107
+        write_config_param "GIT_DOMAIN_NAME" "$GIT_DOMAIN_NAME"
108
+        write_config_param "GIT_CODE" "$GIT_CODE"
117 109
     fi
118 110
 }
119 111
 

+ 2
- 10
src/freedombone-app-hubzilla View File

@@ -185,16 +185,8 @@ function install_interactive_hubzilla {
185 185
             fi
186 186
         done
187 187
         # save the results in the config file
188
-        if grep -q "HUBZILLA_DOMAIN_NAME=" $CONFIGURATION_FILE; then
189
-            sed -i "s|HUBZILLA_DOMAIN_NAME=.*|HUBZILLA_DOMAIN_NAME=$HUBZILLA_DOMAIN_NAME|g" $CONFIGURATION_FILE
190
-        else
191
-            echo "HUBZILLA_DOMAIN_NAME=$HUBZILLA_DOMAIN_NAME" >> $CONFIGURATION_FILE
192
-        fi
193
-        if grep -q "HUBZILLA_CODE=" $CONFIGURATION_FILE; then
194
-            sed -i "s|HUBZILLA_CODE=.*|HUBZILLA_CODE=$HUBZILLA_CODE|g" $CONFIGURATION_FILE
195
-        else
196
-            echo "HUBZILLA_CODE=$HUBZILLA_CODE" >> $CONFIGURATION_FILE
197
-        fi
188
+        write_config_param "HUBZILLA_DOMAIN_NAME" "$HUBZILLA_DOMAIN_NAME"
189
+        write_config_param "HUBZILLA_CODE" "$HUBZILLA_CODE"
198 190
     fi
199 191
 }
200 192
 

+ 3
- 10
src/freedombone-app-mediagoblin View File

@@ -97,17 +97,10 @@ function install_interactive_mediagoblin {
97 97
                 fi
98 98
             fi
99 99
         done
100
+
100 101
         # save the results in the config file
101
-        if grep -q "MEDIAGOBLIN_DOMAIN_NAME=" $CONFIGURATION_FILE; then
102
-            sed -i "s|MEDIAGOBLIN_DOMAIN_NAME=.*|MEDIAGOBLIN_DOMAIN_NAME=$MEDIAGOBLIN_DOMAIN_NAME|g" $CONFIGURATION_FILE
103
-        else
104
-            echo "MEDIAGOBLIN_DOMAIN_NAME=$MEDIAGOBLIN_DOMAIN_NAME" >> $CONFIGURATION_FILE
105
-        fi
106
-        if grep -q "MEDIAGOBLIN_CODE=" $CONFIGURATION_FILE; then
107
-            sed -i "s|MEDIAGOBLIN_CODE=.*|MEDIAGOBLIN_CODE=$MEDIAGOBLIN_CODE|g" $CONFIGURATION_FILE
108
-        else
109
-            echo "MEDIAGOBLIN_CODE=$MEDIAGOBLIN_CODE" >> $CONFIGURATION_FILE
110
-        fi
102
+        write_config_param "MEDIAGOBLIN_DOMAIN_NAME" "$MEDIAGOBLIN_DOMAIN_NAME"
103
+        write_config_param "MEDIAGOBLIN_CODE" "$MEDIAGOBLIN_CODE"
111 104
     fi
112 105
 }
113 106
 

+ 3
- 15
src/freedombone-app-wiki View File

@@ -99,21 +99,9 @@ function install_interactive_wiki {
99 99
         done
100 100
 
101 101
         # save the results in the config file
102
-        if grep -q "WIKI_TITLE=" $CONFIGURATION_FILE; then
103
-            sed -i "s|WIKI_TITLE=.*|WIKI_TITLE=$WIKI_TITLE|g" $CONFIGURATION_FILE
104
-        else
105
-            echo "WIKI_TITLE=$WIKI_TITLE" >> $CONFIGURATION_FILE
106
-        fi
107
-        if grep -q "WIKI_DOMAIN_NAME=" $CONFIGURATION_FILE; then
108
-            sed -i "s|WIKI_DOMAIN_NAME=.*|WIKI_DOMAIN_NAME=$WIKI_DOMAIN_NAME|g" $CONFIGURATION_FILE
109
-        else
110
-            echo "WIKI_DOMAIN_NAME=$WIKI_DOMAIN_NAME" >> $CONFIGURATION_FILE
111
-        fi
112
-        if grep -q "WIKI_CODE=" $CONFIGURATION_FILE; then
113
-            sed -i "s|WIKI_CODE=.*|WIKI_CODE=$WIKI_CODE|g" $CONFIGURATION_FILE
114
-        else
115
-            echo "WIKI_CODE=$WIKI_CODE" >> $CONFIGURATION_FILE
116
-        fi
102
+        write_config_param "WIKI_TITLE" "$WIKI_TITLE"
103
+        write_config_param "WIKI_DOMAIN_NAME" "$WIKI_DOMAIN_NAME"
104
+        write_config_param "WIKI_CODE" "$WIKI_CODE"
117 105
     fi
118 106
 }
119 107
 

+ 1222
- 1859
src/freedombone-config
File diff suppressed because it is too large
View File


+ 17
- 0
src/freedombone-utils-config View File

@@ -40,6 +40,23 @@ function read_config_param {
40 40
     fi
41 41
 }
42 42
 
43
+function write_config_param {
44
+    param_name="$1"
45
+    param_value="$2"
46
+
47
+    if [ $CONFIGURATION_FILE ]; then
48
+        if [ -f $CONFIGURATION_FILE ]; then
49
+            if grep -q "${param_name}=" $CONFIGURATION_FILE; then
50
+                sed -i "s|${param_name}=.*|${param_name}=${param_value}|g" $CONFIGURATION_FILE
51
+            else
52
+                echo "${param_name}=${param_value}" >> $CONFIGURATION_FILE
53
+            fi
54
+        else
55
+            echo "${param_name}=${param_value}" > $CONFIGURATION_FILE
56
+        fi
57
+    fi
58
+}
59
+
43 60
 function read_configuration {
44 61
     # if not installing on a Beaglebone then use sdb as the USB drive by default
45 62
     if [ ! $INSTALLING_ON_BBB ]; then

+ 18
- 0
src/freedombone-utils-selector View File

@@ -92,6 +92,24 @@ function item_in_array {
92 92
     return 1
93 93
 }
94 94
 
95
+# returns a list of available system variants
96
+# based upon the variants string in each app script
97
+function available_system_variants {
98
+    FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
99
+
100
+    for filename in $FILES
101
+    do
102
+        variants_list=$(app_variants $filename)
103
+        variants_array=($variants_list)
104
+        for variant_str in "${vars[@]}"
105
+        do
106
+            if [[ $(item_in_array "$variant_str" ${available_variants_list[@]}) == "0" ]]; then
107
+                available_variants_list+=("$variant_str")
108
+            fi
109
+        done
110
+    done
111
+}
112
+
95 113
 # mark a given app as having been removed so that it doesn't get reinstalled on updates
96 114
 function remove_app {
97 115
     app_name=$1