|
@@ -65,6 +65,7 @@ MY_NAME=
|
65
|
65
|
LOCAL_NETWORK_STATIC_IP_ADDRESS=
|
66
|
66
|
ROUTER_IP_ADDRESS=
|
67
|
67
|
ENABLE_CJDNS=
|
|
68
|
+ENABLE_BATMAN=
|
68
|
69
|
DEBIAN_REPO=
|
69
|
70
|
NAMESERVER1=
|
70
|
71
|
NAMESERVER2=
|
|
@@ -164,6 +165,9 @@ function save_configuration_file {
|
164
|
165
|
if [ $ENABLE_CJDNS ]; then
|
165
|
166
|
echo "ENABLE_CJDNS=$ENABLE_CJDNS" >> $CONFIGURATION_FILE
|
166
|
167
|
fi
|
|
168
|
+ if [ $ENABLE_BATMAN ]; then
|
|
169
|
+ echo "ENABLE_BATMAN=$ENABLE_BATMAN" >> $CONFIGURATION_FILE
|
|
170
|
+ fi
|
167
|
171
|
echo "DEBIAN_REPO=$DEBIAN_REPO" >> $CONFIGURATION_FILE
|
168
|
172
|
echo "NAMESERVER1=$NAMESERVER1" >> $CONFIGURATION_FILE
|
169
|
173
|
echo "NAMESERVER2=$NAMESERVER2" >> $CONFIGURATION_FILE
|
|
@@ -233,6 +237,73 @@ function validate_domain_name {
|
233
|
237
|
fi
|
234
|
238
|
}
|
235
|
239
|
|
|
240
|
+function interactive_gpg {
|
|
241
|
+ dialog --title "Encryption keys" \
|
|
242
|
+ --backtitle "Freedombone Configuration" \
|
|
243
|
+ --defaultno \
|
|
244
|
+ --yesno "\nDo you have existing GPG/PGP keys that you wish to install?" 7 60
|
|
245
|
+ sel=$?
|
|
246
|
+ case $sel in
|
|
247
|
+ 1) return;;
|
|
248
|
+ 255) exit 0;;
|
|
249
|
+ esac
|
|
250
|
+
|
|
251
|
+ dialog --title "Encryption keys" --msgbox 'Plug in a USB drive containing a copy of your .gnupg directory' 6 70
|
|
252
|
+
|
|
253
|
+ if [[ $INSTALLING_ON_BBB == "yes" ]]; then
|
|
254
|
+ GPG_USB_DRIVE='/dev/sda1'
|
|
255
|
+ if [ ! -b $GPG_USB_DRIVE ]; then
|
|
256
|
+ dialog --title "Encryption keys" --msgbox 'No USB drive found' 6 30
|
|
257
|
+ exit 739836
|
|
258
|
+ fi
|
|
259
|
+ else
|
|
260
|
+ GPG_USB_DRIVE='/dev/sdb1'
|
|
261
|
+ if [ ! -b $GPG_USB_DRIVE ]; then
|
|
262
|
+ GPG_USB_DRIVE='/dev/sdc1'
|
|
263
|
+ if [ ! -b $GPG_USB_DRIVE ]; then
|
|
264
|
+ GPG_USB_DRIVE='/dev/sdd1'
|
|
265
|
+ if [ ! -b $GPG_USB_DRIVE ]; then
|
|
266
|
+ dialog --title "Encryption keys" --msgbox 'No USB drive found' 6 30
|
|
267
|
+ exit 27852
|
|
268
|
+ fi
|
|
269
|
+ fi
|
|
270
|
+ fi
|
|
271
|
+ fi
|
|
272
|
+
|
|
273
|
+ GPG_USB_MOUNT='/mnt/usb'
|
|
274
|
+ umount -f $GPG_USB_MOUNT
|
|
275
|
+ if [ ! -d $GPG_USB_MOUNT ]; then
|
|
276
|
+ mkdir -p $GPG_USB_MOUNT
|
|
277
|
+ fi
|
|
278
|
+
|
|
279
|
+ if [ -f /dev/mapper/encrypted_usb ]; then
|
|
280
|
+ rm -rf /dev/mapper/encrypted_usb
|
|
281
|
+ fi
|
|
282
|
+ cryptsetup luksClose encrypted_usb
|
|
283
|
+ cryptsetup luksOpen $GPG_USB_DRIVE encrypted_usb
|
|
284
|
+ if [ "$?" = "0" ]; then
|
|
285
|
+ GPG_USB_DRIVE=/dev/mapper/encrypted_usb
|
|
286
|
+ fi
|
|
287
|
+ mount $GPG_USB_DRIVE $GPG_USB_MOUNT
|
|
288
|
+ if [ ! "$?" = "0" ]; then
|
|
289
|
+ dialog --title "Encryption keys" --msgbox "There was a problem mounting the USB drive to $GPG_USB_MOUNT" 6 70
|
|
290
|
+ rm -rf $GPG_USB_MOUNT
|
|
291
|
+ exit 74393
|
|
292
|
+ fi
|
|
293
|
+
|
|
294
|
+ if [ ! -d $GPG_USB_MOUNT/.gnupg ]; then
|
|
295
|
+ dialog --title "Encryption keys" --msgbox "The directory $GPG_USB_MOUNT/.gnupg was not found" 6 70
|
|
296
|
+ umount $GPG_USB_MOUNT
|
|
297
|
+ rm -rf $GPG_USB_MOUNT
|
|
298
|
+ exit 723814
|
|
299
|
+ fi
|
|
300
|
+
|
|
301
|
+ cp -r $GPG_USB_MOUNT/.gnupg /home/$(grep 'MY_USERNAME' temp.cfg | awk -F '=' '{print $2}')
|
|
302
|
+
|
|
303
|
+ umount $GPG_USB_MOUNT
|
|
304
|
+ rm -rf $GPG_USB_MOUNT
|
|
305
|
+}
|
|
306
|
+
|
236
|
307
|
function interactive_configuration {
|
237
|
308
|
# create a temporary copy of the configuration file
|
238
|
309
|
# which can be used to pre-populate selections
|
|
@@ -325,6 +396,8 @@ function interactive_configuration {
|
325
|
396
|
fi
|
326
|
397
|
save_configuration_file
|
327
|
398
|
|
|
399
|
+ interactive_gpg
|
|
400
|
+
|
328
|
401
|
data=$(tempfile 2>/dev/null)
|
329
|
402
|
trap "rm -f $data" 0 1 2 5 15
|
330
|
403
|
if [[ $INSTALLING_ON_BBB == "no" ]]; then
|