|
@@ -31,10 +31,12 @@
|
31
|
31
|
function read_config_param {
|
32
|
32
|
param_name="$1"
|
33
|
33
|
|
34
|
|
- if [ $CONFIGURATION_FILE ]; then
|
35
|
|
- if [ -f $CONFIGURATION_FILE ]; then
|
36
|
|
- if grep -q "${param_name}=" $CONFIGURATION_FILE; then
|
37
|
|
- export ${param_name}=$(cat $CONFIGURATION_FILE | grep "${param_name}=" | head -n 1 | awk -F '=' '{print $2}')
|
|
34
|
+ if [ ${#param_name} -gt 0 ]; then
|
|
35
|
+ if [ $CONFIGURATION_FILE ]; then
|
|
36
|
+ if [ -f $CONFIGURATION_FILE ]; then
|
|
37
|
+ if grep -q "${param_name}=" $CONFIGURATION_FILE; then
|
|
38
|
+ export ${param_name}=$(cat $CONFIGURATION_FILE | grep "${param_name}=" | head -n 1 | awk -F '=' '{print $2}')
|
|
39
|
+ fi
|
38
|
40
|
fi
|
39
|
41
|
fi
|
40
|
42
|
fi
|
|
@@ -44,15 +46,19 @@ function write_config_param {
|
44
|
46
|
param_name="$1"
|
45
|
47
|
param_value="$2"
|
46
|
48
|
|
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
|
|
49
|
+ if [ ${#param_name} -gt 0 ]; then
|
|
50
|
+ if [ ${#param_value} -gt 0 ]; then
|
|
51
|
+ if [ $CONFIGURATION_FILE ]; then
|
|
52
|
+ if [ -f $CONFIGURATION_FILE ]; then
|
|
53
|
+ if grep -q "${param_name}=" $CONFIGURATION_FILE; then
|
|
54
|
+ sed -i "s|${param_name}=.*|${param_name}=${param_value}|g" $CONFIGURATION_FILE
|
|
55
|
+ else
|
|
56
|
+ echo "${param_name}=${param_value}" >> $CONFIGURATION_FILE
|
|
57
|
+ fi
|
|
58
|
+ else
|
|
59
|
+ echo "${param_name}=${param_value}" > $CONFIGURATION_FILE
|
|
60
|
+ fi
|
53
|
61
|
fi
|
54
|
|
- else
|
55
|
|
- echo "${param_name}=${param_value}" > $CONFIGURATION_FILE
|
56
|
62
|
fi
|
57
|
63
|
fi
|
58
|
64
|
}
|
|
@@ -80,95 +86,88 @@ function read_configuration {
|
80
|
86
|
cp $CONFIGURATION_FILE /root/${PROJECT_NAME}.cfg
|
81
|
87
|
fi
|
82
|
88
|
|
83
|
|
- read_config_param "FRIENDS_MIRRORS_SERVER"
|
84
|
|
- read_config_param "FRIENDS_MIRRORS_SSH_PORT"
|
85
|
|
- read_config_param "FRIENDS_MIRRORS_PASSWORD"
|
86
|
|
- read_config_param "MY_MIRRORS_PASSWORD"
|
87
|
|
-
|
88
|
|
- read_config_param "SYSTEM_TYPE"
|
89
|
|
- read_config_param "SSL_PROTOCOLS"
|
90
|
|
- read_config_param "SSL_CIPHERS"
|
91
|
|
- read_config_param "SSH_CIPHERS"
|
92
|
|
- read_config_param "SSH_MACS"
|
93
|
|
- read_config_param "SSH_KEX"
|
94
|
|
- read_config_param "SSH_HOST_KEY_ALGORITHMS"
|
95
|
|
- read_config_param "SSH_PASSWORDS"
|
96
|
|
- read_config_param "REFRESH_GPG_KEYS_HOURS"
|
97
|
|
- read_config_param "GPG_KEYSERVER"
|
98
|
|
- read_config_param "ENABLE_SOCIAL_KEY_MANAGEMENT"
|
99
|
|
- read_config_param "MY_USERNAME"
|
100
|
|
- read_config_param "DOMAIN_NAME"
|
101
|
|
- read_config_param "DEFAULT_DOMAIN_NAME"
|
102
|
|
- read_config_param "DEFAULT_DOMAIN_CODE"
|
103
|
|
- read_config_param "NAMESERVER1"
|
104
|
|
- read_config_param "NAMESERVER2"
|
105
|
|
- read_config_param "GET_IP_ADDRESS_URL"
|
106
|
|
- read_config_param "DDNS_PROVIDER"
|
107
|
|
- read_config_param "DDNS_USERNAME"
|
108
|
|
- read_config_param "DDNS_PASSWORD"
|
109
|
|
- read_config_param "LOCAL_NETWORK_STATIC_IP_ADDRESS"
|
110
|
|
- read_config_param "ROUTER_IP_ADDRESS"
|
111
|
|
- read_config_param "CPU_CORES"
|
112
|
|
- read_config_param "WEBSERVER_LOG_LEVEL"
|
113
|
|
- read_config_param "ROUTE_THROUGH_TOR"
|
114
|
|
- read_config_param "MY_NAME"
|
115
|
|
- read_config_param "MY_EMAIL_ADDRESS"
|
116
|
|
- read_config_param "INSTALLING_ON_BBB"
|
117
|
|
- read_config_param "SSH_PORT"
|
118
|
|
- read_config_param "INSTALLED_WITHIN_DOCKER"
|
119
|
|
- read_config_param "GPG_ENCRYPT_STORED_EMAIL"
|
120
|
|
- read_config_param "MY_GPG_PUBLIC_KEY"
|
121
|
|
- read_config_param "MY_GPG_PRIVATE_KEY"
|
122
|
|
- read_config_param "MY_GPG_PUBLIC_KEY_ID"
|
123
|
|
- read_config_param "USB_DRIVE"
|
124
|
|
- read_config_param "MAX_PHP_MEMORY"
|
125
|
|
- read_config_param "TLS_TIME_SOURCE1"
|
126
|
|
- read_config_param "TLS_TIME_SOURCE2"
|
127
|
|
- read_config_param "ONION_ONLY"
|
128
|
|
- read_config_param "DEFAULT_LANGUAGE"
|
129
|
|
- read_config_param "MINIMAL_INSTALL"
|
130
|
|
- read_config_param "LETSENCRYPT_SERVER"
|
131
|
|
-
|
132
|
|
- read_config_param "WIFI_INTERFACE"
|
133
|
|
- read_config_param "WIFI_SSID"
|
134
|
|
- read_config_param "WIFI_TYPE"
|
135
|
|
- read_config_param "WIFI_PASSPHRASE"
|
136
|
|
- read_config_param "WIFI_HOTSPOT"
|
137
|
|
- read_config_param "WIFI_NETWORKS_FILE"
|
138
|
|
-
|
139
|
|
- read_config_param "DEFAULT_SEARCH"
|
140
|
|
- read_config_param "SEARCH_ENGINE_PASSWORD"
|
141
|
|
-
|
142
|
|
- read_config_param "PROJECT_WEBSITE"
|
143
|
|
- read_config_param "PROJECT_REPO"
|
144
|
|
-
|
145
|
|
- read_config_param "GPGIT_REPO"
|
146
|
|
- read_config_param "GPGIT_COMMIT"
|
147
|
|
-
|
148
|
|
- read_config_param "NGINX_ENSITE_REPO"
|
149
|
|
- read_config_param "NGINX_ENSITE_REPO"
|
150
|
|
- read_config_param "NGINX_ENSITE_COMMIT"
|
151
|
|
-
|
152
|
|
- read_config_param "CLEANUP_MAILDIR_COMMIT"
|
153
|
|
- read_config_param "CLEANUP_MAILDIR_REPO"
|
154
|
|
-
|
155
|
|
- read_config_param "INADYN_REPO"
|
156
|
|
- read_config_param "INADYN_COMMIT"
|
157
|
|
-
|
158
|
|
- read_config_param "DH_KEYLENGTH"
|
159
|
|
- read_config_param "WIFI_CHANNEL"
|
160
|
|
-
|
161
|
|
- read_config_param "IPV6_NETWORK"
|
162
|
|
- read_config_param "HWRNG_TYPE"
|
163
|
|
-
|
164
|
|
- read_config_param "ENABLE_BABEL"
|
165
|
|
- read_config_param "ENABLE_BATMAN"
|
166
|
|
- read_config_param "ENABLE_CJDNS"
|
167
|
|
-
|
168
|
|
- read_config_param "PUBLIC_MAILING_LIST"
|
|
89
|
+ read_config_variables=(FRIENDS_MIRRORS_SERVER
|
|
90
|
+ FRIENDS_MIRRORS_SSH_PORT
|
|
91
|
+ FRIENDS_MIRRORS_PASSWORD
|
|
92
|
+ MY_MIRRORS_PASSWORD
|
|
93
|
+ SYSTEM_TYPE
|
|
94
|
+ SSL_PROTOCOLS
|
|
95
|
+ SSL_CIPHERS
|
|
96
|
+ SSH_CIPHERS
|
|
97
|
+ SSH_MACS
|
|
98
|
+ SSH_KEX
|
|
99
|
+ SSH_HOST_KEY_ALGORITHMS
|
|
100
|
+ SSH_PASSWORDS
|
|
101
|
+ REFRESH_GPG_KEYS_HOURS
|
|
102
|
+ GPG_KEYSERVER
|
|
103
|
+ ENABLE_SOCIAL_KEY_MANAGEMENT
|
|
104
|
+ MY_USERNAME
|
|
105
|
+ DOMAIN_NAME
|
|
106
|
+ DEFAULT_DOMAIN_NAME
|
|
107
|
+ DEFAULT_DOMAIN_CODE
|
|
108
|
+ NAMESERVER1
|
|
109
|
+ NAMESERVER2
|
|
110
|
+ GET_IP_ADDRESS_URL
|
|
111
|
+ DDNS_PROVIDER
|
|
112
|
+ DDNS_USERNAME
|
|
113
|
+ DDNS_PASSWORD
|
|
114
|
+ LOCAL_NETWORK_STATIC_IP_ADDRESS
|
|
115
|
+ ROUTER_IP_ADDRESS
|
|
116
|
+ CPU_CORES
|
|
117
|
+ WEBSERVER_LOG_LEVEL
|
|
118
|
+ ROUTE_THROUGH_TOR
|
|
119
|
+ MY_NAME
|
|
120
|
+ MY_EMAIL_ADDRESS
|
|
121
|
+ INSTALLING_ON_BBB
|
|
122
|
+ SSH_PORT
|
|
123
|
+ INSTALLED_WITHIN_DOCKER
|
|
124
|
+ GPG_ENCRYPT_STORED_EMAIL
|
|
125
|
+ MY_GPG_PUBLIC_KEY
|
|
126
|
+ MY_GPG_PRIVATE_KEY
|
|
127
|
+ MY_GPG_PUBLIC_KEY_ID
|
|
128
|
+ USB_DRIVE
|
|
129
|
+ MAX_PHP_MEMORY
|
|
130
|
+ TLS_TIME_SOURCE1
|
|
131
|
+ TLS_TIME_SOURCE2
|
|
132
|
+ ONION_ONLY
|
|
133
|
+ DEFAULT_LANGUAGE
|
|
134
|
+ MINIMAL_INSTALL
|
|
135
|
+ LETSENCRYPT_SERVER
|
|
136
|
+ WIFI_INTERFACE
|
|
137
|
+ WIFI_SSID
|
|
138
|
+ WIFI_TYPE
|
|
139
|
+ WIFI_PASSPHRASE
|
|
140
|
+ WIFI_HOTSPOT
|
|
141
|
+ WIFI_NETWORKS_FILE
|
|
142
|
+ DEFAULT_SEARCH
|
|
143
|
+ SEARCH_ENGINE_PASSWORD
|
|
144
|
+ PROJECT_WEBSITE
|
|
145
|
+ PROJECT_REPO
|
|
146
|
+ GPGIT_REPO
|
|
147
|
+ GPGIT_COMMIT
|
|
148
|
+ NGINX_ENSITE_REPO
|
|
149
|
+ NGINX_ENSITE_REPO
|
|
150
|
+ NGINX_ENSITE_COMMIT
|
|
151
|
+ CLEANUP_MAILDIR_COMMIT
|
|
152
|
+ CLEANUP_MAILDIR_REPO
|
|
153
|
+ INADYN_REPO
|
|
154
|
+ INADYN_COMMIT
|
|
155
|
+ DH_KEYLENGTH
|
|
156
|
+ WIFI_CHANNEL
|
|
157
|
+ IPV6_NETWORK
|
|
158
|
+ HWRNG_TYPE
|
|
159
|
+ ENABLE_BABEL
|
|
160
|
+ ENABLE_BATMAN
|
|
161
|
+ ENABLE_CJDNS
|
|
162
|
+ PUBLIC_MAILING_LIST)
|
|
163
|
+
|
|
164
|
+ for v in "${read_config_variables[@]}"
|
|
165
|
+ do
|
|
166
|
+ read_config_param "$v"
|
|
167
|
+ done
|
169
|
168
|
|
170
|
169
|
if grep -q "DEBIAN_REPO" $CONFIGURATION_FILE; then
|
171
|
|
- DEBIAN_REPO=$(grep "DEBIAN_REPO" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
|
170
|
+ read_config_param "DEBIAN_REPO"
|
172
|
171
|
CHECK_MESSAGE=$"Check your internet connection, /etc/network/interfaces and /etc/resolv.conf, then delete $COMPLETION_FILE, run 'rm -fR /var/lib/apt/lists/* && apt-get update --fix-missing' and run this script again. If hash sum mismatches persist then try setting $DEBIAN_REPO to a different mirror and also change /etc/apt/sources.list."
|
173
|
172
|
fi
|
174
|
173
|
fi
|