|
@@ -315,9 +315,13 @@ WIFI_ESSID=
|
315
|
315
|
# Optional wifi password
|
316
|
316
|
WIFI_PASSWORD=
|
317
|
317
|
|
318
|
|
-# wifi interface
|
|
318
|
+# Wifi interface
|
319
|
319
|
WIFI_INTERFACE="wlan0"
|
320
|
|
-WIFI_HOTSPOT_MODE="g"
|
|
320
|
+
|
|
321
|
+# Whether to always force there to exist a wifi password
|
|
322
|
+WIFI_FORCE_PASSWORD="no"
|
|
323
|
+
|
|
324
|
+# Channel number for wifi hotspot
|
321
|
325
|
WIFI_HOTSPOT_CHANNEL=7
|
322
|
326
|
|
323
|
327
|
# message if something fails to install
|
|
@@ -405,9 +409,6 @@ function read_configuration {
|
405
|
409
|
if grep -q "WIFI_INTERFACE" $CONFIGURATION_FILE; then
|
406
|
410
|
WIFI_INTERFACE=$(grep "WIFI_INTERFACE" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
407
|
411
|
fi
|
408
|
|
- if grep -q "WIFI_HOTSPOT_MODE" $CONFIGURATION_FILE; then
|
409
|
|
- WIFI_HOTSPOT_MODE=$(grep "WIFI_HOTSPOT_MODE" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
410
|
|
- fi
|
411
|
412
|
if grep -q "WIFI_HOTSPOT_CHANNEL" $CONFIGURATION_FILE; then
|
412
|
413
|
WIFI_HOTSPOT_CHANNEL=$(grep "WIFI_HOTSPOT_CHANNEL" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
413
|
414
|
fi
|
|
@@ -7131,15 +7132,37 @@ function enable_wifi_hotspot {
|
7131
|
7132
|
exit 853
|
7132
|
7133
|
fi
|
7133
|
7134
|
|
|
7135
|
+ get_wifi_essid
|
|
7136
|
+ get_wifi_password
|
|
7137
|
+
|
|
7138
|
+ # Create an ESSID if one doesn't exist
|
|
7139
|
+ if [ ! $WIFI_ESSID ]; then
|
|
7140
|
+ TEMP_WIFI_ESSID=$(openssl rand -base64 8)
|
|
7141
|
+ WIFI_ESSID="Freedom"${TEMP_WIFI_ESSID:0:3}
|
|
7142
|
+ fi
|
|
7143
|
+
|
|
7144
|
+ # Add a password
|
|
7145
|
+ if [[ $WIFI_FORCE_PASSWORD == "yes" ]]; then
|
|
7146
|
+ if [ ! $WIFI_PASSWORD ]; then
|
|
7147
|
+ TEMP_WIFI_PASSWORD=$(openssl rand -base64 8)
|
|
7148
|
+ WIFI_PASSWORD=${TEMP_WIFI_PASSWORD:0:8}
|
|
7149
|
+ fi
|
|
7150
|
+ fi
|
|
7151
|
+
|
7134
|
7152
|
if ! grep -q "Wifi hotspot" $COMPLETION_FILE; then
|
7135
|
7153
|
echo '' >> /etc/network/interfaces
|
7136
|
7154
|
echo '# Wifi hotspot' >> /etc/network/interfaces
|
7137
|
7155
|
echo "auto $WIFI_INTERFACE" >> /etc/network/interfaces
|
7138
|
7156
|
echo "iface $WIFI_INTERFACE inet static" >> /etc/network/interfaces
|
7139
|
|
- echo ' address 192.168.4.1' >> /etc/network/interfaces
|
7140
|
|
- echo ' network 192.168.4.0' >> /etc/network/interfaces
|
7141
|
|
- echo ' netmask 255.255.255.0' >> /etc/network/interfaces
|
7142
|
|
- echo ' broadcast 192.168.4.255' >> /etc/network/interfaces
|
|
7157
|
+ echo ' address 192.168.4.1' >> /etc/network/interfaces
|
|
7158
|
+ echo ' network 192.168.4.0' >> /etc/network/interfaces
|
|
7159
|
+ echo ' netmask 255.255.255.0' >> /etc/network/interfaces
|
|
7160
|
+ echo ' broadcast 192.168.4.255' >> /etc/network/interfaces
|
|
7161
|
+ if [ $WIFI_PASSWORD ]; then
|
|
7162
|
+ echo -n ' wpa-psk "' >> /etc/network/interfaces
|
|
7163
|
+ echo -n "$WIFI_PASSWORD" >> /etc/network/interfaces
|
|
7164
|
+ echo '"' >> /etc/network/interfaces
|
|
7165
|
+ fi
|
7143
|
7166
|
service networking restart
|
7144
|
7167
|
fi
|
7145
|
7168
|
|
|
@@ -7150,20 +7173,6 @@ function enable_wifi_hotspot {
|
7150
|
7173
|
exit 490
|
7151
|
7174
|
fi
|
7152
|
7175
|
|
7153
|
|
- get_wifi_essid
|
7154
|
|
- get_wifi_password
|
7155
|
|
-
|
7156
|
|
- # Create an ESSID if one doesn't exist
|
7157
|
|
- if [ ! $WIFI_ESSID ]; then
|
7158
|
|
- TEMP_WIFI_ESSID=$(openssl rand -base64 8)
|
7159
|
|
- WIFI_ESSID="Freedom"${TEMP_WIFI_ESSID:0:3}
|
7160
|
|
- fi
|
7161
|
|
- # Add a password
|
7162
|
|
- if [ ! $WIFI_PASSWORD ]; then
|
7163
|
|
- TEMP_WIFI_PASSWORD=$(openssl rand -base64 8)
|
7164
|
|
- WIFI_PASSWORD=${TEMP_WIFI_PASSWORD:0:8}
|
7165
|
|
- fi
|
7166
|
|
-
|
7167
|
7176
|
sed -i 's|#DAEMON_CONF=.*|DAEMON_CONF="/etc/hostapd/hostapd.conf"|g' /etc/default/hostapd
|
7168
|
7177
|
|
7169
|
7178
|
echo '### Wireless network name ###' > /etc/hostapd/hostapd.conf
|
|
@@ -7190,7 +7199,11 @@ function enable_wifi_hotspot {
|
7190
|
7199
|
echo "wpa_passphrase=$WIFI_PASSWORD" >> /etc/hostapd/hostapd.conf
|
7191
|
7200
|
echo '' >> /etc/hostapd/hostapd.conf
|
7192
|
7201
|
echo '## Key management algorithms ##' >> /etc/hostapd/hostapd.conf
|
7193
|
|
- echo 'wpa_key_mgmt=WPA-PSK' >> /etc/hostapd/hostapd.conf
|
|
7202
|
+ if [ ! $WIFI_PASSWORD ]; then
|
|
7203
|
+ echo 'wpa_key_mgmt=WPA-NONE' >> /etc/hostapd/hostapd.conf
|
|
7204
|
+ else
|
|
7205
|
+ echo 'wpa_key_mgmt=WPA-PSK' >> /etc/hostapd/hostapd.conf
|
|
7206
|
+ fi
|
7194
|
7207
|
echo '#' >> /etc/hostapd/hostapd.conf
|
7195
|
7208
|
echo '## Set cipher suites (encryption algorithms) ##' >> /etc/hostapd/hostapd.conf
|
7196
|
7209
|
echo '## TKIP = Temporal Key Integrity Protocol' >> /etc/hostapd/hostapd.conf
|
|
@@ -7235,7 +7248,11 @@ function enable_wifi_hotspot {
|
7235
|
7248
|
echo 'Wifi Hotspot' >> /home/$MY_USERNAME/README
|
7236
|
7249
|
echo '============' >> /home/$MY_USERNAME/README
|
7237
|
7250
|
echo "ESSID: $WIFI_ESSID" >> /home/$MY_USERNAME/README
|
7238
|
|
- echo "Wifi password: $WIFI_PASSWORD" >> /home/$MY_USERNAME/README
|
|
7251
|
+ if [ $WIFI_PASSWORD ]; then
|
|
7252
|
+ echo "Wifi password: $WIFI_PASSWORD" >> /home/$MY_USERNAME/README
|
|
7253
|
+ else
|
|
7254
|
+ echo 'No password' >> /home/$MY_USERNAME/README
|
|
7255
|
+ fi
|
7239
|
7256
|
chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/README
|
7240
|
7257
|
fi
|
7241
|
7258
|
|
|
@@ -7268,9 +7285,11 @@ function enable_wifi {
|
7268
|
7285
|
fi
|
7269
|
7286
|
sed -i "s/essid/$WIFI_ESSID/g" /etc/network/interfaces
|
7270
|
7287
|
# Add a password
|
7271
|
|
- if [ ! $WIFI_PASSWORD ]; then
|
7272
|
|
- TEMP_WIFI_PASSWORD=$(openssl rand -base64 8)
|
7273
|
|
- WIFI_PASSWORD=${TEMP_WIFI_PASSWORD:0:8}
|
|
7288
|
+ if [[ $WIFI_FORCE_PASSWORD == "yes" ]]; then
|
|
7289
|
+ if [ ! $WIFI_PASSWORD ]; then
|
|
7290
|
+ TEMP_WIFI_PASSWORD=$(openssl rand -base64 8)
|
|
7291
|
+ WIFI_PASSWORD=${TEMP_WIFI_PASSWORD:0:8}
|
|
7292
|
+ fi
|
7274
|
7293
|
fi
|
7275
|
7294
|
|
7276
|
7295
|
# Add a password
|
|
@@ -7286,14 +7305,18 @@ function enable_wifi {
|
7286
|
7305
|
fi
|
7287
|
7306
|
|
7288
|
7307
|
# Add details to the README file
|
7289
|
|
- if [[ ENABLE_WIFI_HOTSPOT != "yes" ]]; then
|
|
7308
|
+ if [[ ENABLE_WIFI != "yes" ]]; then
|
7290
|
7309
|
if ! grep -q "Wifi Settings" /home/$MY_USERNAME/README; then
|
7291
|
7310
|
echo '' >> /home/$MY_USERNAME/README
|
7292
|
7311
|
echo '' >> /home/$MY_USERNAME/README
|
7293
|
7312
|
echo 'Wifi Settings' >> /home/$MY_USERNAME/README
|
7294
|
7313
|
echo '=============' >> /home/$MY_USERNAME/README
|
7295
|
7314
|
echo "ESSID: $WIFI_ESSID" >> /home/$MY_USERNAME/README
|
7296
|
|
- echo "Wifi password: $WIFI_PASSWORD" >> /home/$MY_USERNAME/README
|
|
7315
|
+ if [ $WIFI_PASSWORD ]; then
|
|
7316
|
+ echo "Wifi password: $WIFI_PASSWORD" >> /home/$MY_USERNAME/README
|
|
7317
|
+ else
|
|
7318
|
+ echo 'No password' >> /home/$MY_USERNAME/README
|
|
7319
|
+ fi
|
7297
|
7320
|
chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/README
|
7298
|
7321
|
fi
|
7299
|
7322
|
fi
|