|
@@ -52,6 +52,7 @@ VARIANT_SOCIAL="social"
|
52
|
52
|
VARIANT_MEDIA="media"
|
53
|
53
|
VARIANT_DEVELOPER="developer"
|
54
|
54
|
VARIANT_MESH="mesh"
|
|
55
|
+VARIANT_MESH_USER="mesh-user"
|
55
|
56
|
|
56
|
57
|
MY_USERNAME=
|
57
|
58
|
DEFAULT_DOMAIN_NAME=
|
|
@@ -490,7 +491,7 @@ function interactive_configuration {
|
490
|
491
|
data=$(tempfile 2>/dev/null)
|
491
|
492
|
trap "rm -f $data" 0 1 2 5 15
|
492
|
493
|
dialog --backtitle "Freedombone Configuration" \
|
493
|
|
- --radiolist "Type of Installation:" 17 40 10 \
|
|
494
|
+ --radiolist "Type of Installation:" 18 40 11 \
|
494
|
495
|
1 Full on \
|
495
|
496
|
2 Writer off \
|
496
|
497
|
3 Cloud off \
|
|
@@ -500,7 +501,8 @@ function interactive_configuration {
|
500
|
501
|
7 Social off \
|
501
|
502
|
8 Media off \
|
502
|
503
|
9 Developer off \
|
503
|
|
- 10 Mesh off 2> $data
|
|
504
|
+ 10 "Mesh (router)" off \
|
|
505
|
+ 11 "Mesh (user device)" off 2> $data
|
504
|
506
|
sel=$?
|
505
|
507
|
case $sel in
|
506
|
508
|
1) exit 1;;
|
|
@@ -517,10 +519,11 @@ function interactive_configuration {
|
517
|
519
|
8) SYSTEM_TYPE=$VARIANT_MEDIA;;
|
518
|
520
|
9) SYSTEM_TYPE=$VARIANT_DEVELOPER;;
|
519
|
521
|
10) SYSTEM_TYPE=$VARIANT_MESH;;
|
|
522
|
+ 11) SYSTEM_TYPE=$VARIANT_MESH_USER;;
|
520
|
523
|
esac
|
521
|
524
|
save_configuration_file
|
522
|
525
|
|
523
|
|
- if [[ $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then
|
|
526
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_MESH" || $SYSTEM_TYPE == "$VARIANT_MESH_USER" ]]; then
|
524
|
527
|
ENABLE_BATMAN="yes"
|
525
|
528
|
ENABLE_CJDNS="no"
|
526
|
529
|
ENABLE_BABEL="no"
|
|
@@ -556,31 +559,66 @@ function interactive_configuration {
|
556
|
559
|
esac
|
557
|
560
|
save_configuration_file
|
558
|
561
|
|
559
|
|
- data=$(tempfile 2>/dev/null)
|
560
|
|
- trap "rm -f $data" 0 1 2 5 15
|
561
|
|
- dialog --backtitle "Freedombone Configuration" \
|
562
|
|
- --inputbox "Give your mesh peer a name" 10 40 "$(grep 'DEFAULT_DOMAIN_NAME' temp.cfg | awk -F '=' '{print $2}')" 2> $data
|
563
|
|
- sel=$?
|
564
|
|
- case $sel in
|
565
|
|
- 0) DEFAULT_DOMAIN_NAME=$(cat $data);;
|
566
|
|
- 1) exit 1;;
|
567
|
|
- 255) exit 1;;
|
568
|
|
- esac
|
|
562
|
+ if [[ $SYSTEM_TYPE != "$VARIANT_MESH_USER" ]]; then
|
|
563
|
+ data=$(tempfile 2>/dev/null)
|
|
564
|
+ trap "rm -f $data" 0 1 2 5 15
|
|
565
|
+ dialog --backtitle "Freedombone Configuration" \
|
|
566
|
+ --inputbox "Give your mesh peer a name" 10 40 "$(grep 'DEFAULT_DOMAIN_NAME' temp.cfg | awk -F '=' '{print $2}')" 2> $data
|
|
567
|
+ sel=$?
|
|
568
|
+ case $sel in
|
|
569
|
+ 0) DEFAULT_DOMAIN_NAME=$(cat $data);;
|
|
570
|
+ 1) exit 1;;
|
|
571
|
+ 255) exit 1;;
|
|
572
|
+ esac
|
|
573
|
+ else
|
|
574
|
+ DEFAULT_DOMAIN_NAME=$(hostname)
|
|
575
|
+ fi
|
569
|
576
|
save_configuration_file
|
570
|
577
|
fi
|
571
|
578
|
|
572
|
|
- if [[ $ENABLE_BATMAN == "yes" ]]; then
|
573
|
|
- data=$(tempfile 2>/dev/null)
|
574
|
|
- trap "rm -f $data" 0 1 2 5 15
|
575
|
|
- dialog --backtitle "Freedombone Configuration" \
|
576
|
|
- --inputbox "Optionally register with an Access Point" 10 40 "$(grep 'BATMAN_CELLID' temp.cfg | awk -F '=' '{print $2}')" 2> $data
|
577
|
|
- sel=$?
|
578
|
|
- case $sel in
|
579
|
|
- 0) BATMAN_CELLID=$(cat $data);;
|
580
|
|
- 1) exit 1;;
|
581
|
|
- 255) exit 1;;
|
582
|
|
- esac
|
583
|
|
- save_configuration_file
|
|
579
|
+ #if [[ $ENABLE_BATMAN == "yes" ]]; then
|
|
580
|
+ # data=$(tempfile 2>/dev/null)
|
|
581
|
+ # trap "rm -f $data" 0 1 2 5 15
|
|
582
|
+ # dialog --backtitle "Freedombone Configuration" \
|
|
583
|
+ # --inputbox "Optionally register with an Access Point" 10 40 "$(grep 'BATMAN_CELLID' temp.cfg | awk -F '=' '{print $2}')" 2> $data
|
|
584
|
+ # sel=$?
|
|
585
|
+ # case $sel in
|
|
586
|
+ # 0) BATMAN_CELLID=$(cat $data);;
|
|
587
|
+ # 1) exit 1;;
|
|
588
|
+ # 255) exit 1;;
|
|
589
|
+ # esac
|
|
590
|
+ # save_configuration_file
|
|
591
|
+ #fi
|
|
592
|
+
|
|
593
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_MESH_USER" ]]; then
|
|
594
|
+ freedombone-client
|
|
595
|
+ if [ "$?" = "0" ]; then
|
|
596
|
+ clear
|
|
597
|
+ echo ".---. . . "
|
|
598
|
+ echo "| | | "
|
|
599
|
+ echo "|--- .--. .-. .-. .-.| .-. .--.--. |.-. .-. .--. .-. "
|
|
600
|
+ echo "| | (.-' (.-' ( | ( )| | | | )( )| | (.-' "
|
|
601
|
+ echo "' ' --' --' -' - -' ' ' -' -' -' ' - --'"
|
|
602
|
+ echo ''
|
|
603
|
+ echo 'Your system is now ready for connection to the mesh network'
|
|
604
|
+ echo ''
|
|
605
|
+ echo 'To connect to the network open a terminal and type:'
|
|
606
|
+ echo ''
|
|
607
|
+ echo ' meshweb'
|
|
608
|
+ echo ''
|
|
609
|
+ echo 'To disconnect from the mesh and return to the internet type:'
|
|
610
|
+ echo ''
|
|
611
|
+ echo ' sudo batman stop'
|
|
612
|
+ echo ''
|
|
613
|
+ echo 'To turn your system into a dedicated mesh peer you could add'
|
|
614
|
+ echo 'the meshweb command to your startup applications'
|
|
615
|
+ echo ''
|
|
616
|
+ touch /tmp/meshuserdevice
|
|
617
|
+ exit 0
|
|
618
|
+ else
|
|
619
|
+ echo 'Failed to fully install the mesh networking system'
|
|
620
|
+ exit 74589
|
|
621
|
+ fi
|
584
|
622
|
fi
|
585
|
623
|
|
586
|
624
|
if [[ $SYSTEM_TYPE == "$VARIANT_MESH" && $DEFAULT_DOMAIN_NAME && -d /home/$DEFAULT_DOMAIN_NAME ]]; then
|
|
@@ -635,9 +673,9 @@ function interactive_configuration {
|
635
|
673
|
esac
|
636
|
674
|
if [[ $INSTALLING_ON_BBB == "yes" ]]; then
|
637
|
675
|
USB_DRIVE=/dev/sda1
|
638
|
|
- # here a short diffie-hellman key length is used, because otherwise creation of keys
|
639
|
|
- # becomes impractically long on the beaglebone.
|
640
|
|
- DH_KEYLENGTH=1024
|
|
676
|
+ # here a short diffie-hellman key length is used, because otherwise creation of keys
|
|
677
|
+ # becomes impractically long on the beaglebone.
|
|
678
|
+ DH_KEYLENGTH=1024
|
641
|
679
|
fi
|
642
|
680
|
save_configuration_file
|
643
|
681
|
|