Przeglądaj źródła

More interactive settings

Bob Mottram 10 lat temu
rodzic
commit
73ec523bbb
1 zmienionych plików z 268 dodań i 1 usunięć
  1. 268
    1
      src/freedombone

+ 268
- 1
src/freedombone Wyświetl plik

@@ -378,6 +378,31 @@ function show_help {
378 378
 }
379 379
 
380 380
 function interactive_configuration {
381
+  dialog --backtitle "Freedombone Configuration" \
382
+      --radiolist "Type of Installation:" 15 40 10 \
383
+      1 Full on \
384
+      2 Writer off \
385
+      3 Cloud off \
386
+      4 Chat off \
387
+      5 Mailbox off \
388
+      6 Non-Mailbox off \
389
+      7 Social off \
390
+      8 Media off \
391
+      9 Tor-Dongle off
392
+  sel=$?
393
+  case $sel in
394
+      1) ;;
395
+      2) SYSTEM_TYPE=$VARIANT_WRITER;;
396
+      3) SYSTEM_TYPE=$VARIANT_CLOUD;;
397
+      4) SYSTEM_TYPE=$VARIANT_CHAT;;
398
+      5) SYSTEM_TYPE=$VARIANT_MAILBOX;;
399
+      6) SYSTEM_TYPE=$VARIANT_NONMAILBOX;;
400
+      7) SYSTEM_TYPE=$VARIANT_SOCIAL;;
401
+      8) SYSTEM_TYPE=$VARIANT_MEDIA;;
402
+      9) SYSTEM_TYPE=$VARIANT_TOR_DONGLE;;
403
+      255) exit 0;;
404
+  esac
405
+
381 406
   dialog --title "Install Target" \
382 407
       --backtitle "Freedombone Configuration" \
383 408
       --defaultno \
@@ -390,7 +415,7 @@ function interactive_configuration {
390 415
   esac
391 416
 
392 417
   dialog --backtitle "Freedombone Configuration" \
393
-      --checklist "Choose Dynamic DNS provider:" 15 40 14 \
418
+      --radiolist "Choose Dynamic DNS provider:" 15 40 14 \
394 419
       1 dyndns off \
395 420
       2 freedns on \
396 421
       3 zoneedit off \
@@ -480,6 +505,248 @@ function interactive_configuration {
480 505
       exit 8357
481 506
   fi
482 507
 
508
+  dialog --backtitle "Freedombone Configuration" \
509
+      --inputbox "Static IP Address of this system" 10 30 2> $data
510
+  sel=$?
511
+  case $sel in
512
+      0) LOCAL_NETWORK_STATIC_IP_ADDRESS=$(cat $data);;
513
+      1) exit 0;;
514
+      255) exit 0;;
515
+  esac
516
+  if [ ! $LOCAL_NETWORK_STATIC_IP_ADDRESS ]; then
517
+      exit 6950
518
+  fi
519
+
520
+  dialog --backtitle "Freedombone Configuration" \
521
+      --inputbox "LAN IP Address of the internet router" 10 30 2> $data
522
+  sel=$?
523
+  case $sel in
524
+      0) ROUTER_IP_ADDRESS=$(cat $data);;
525
+      1) exit 0;;
526
+      255) exit 0;;
527
+  esac
528
+  if [ ! $ROUTER_IP_ADDRESS ]; then
529
+      exit 9868
530
+  fi
531
+
532
+  dialog --title "Mesh Networking" \
533
+      --backtitle "Freedombone Configuration" \
534
+      --defaultno \
535
+      --yesno "\nDo you want to enable CJDNS?" 7 60
536
+  sel=$?
537
+  case $sel in
538
+      0) ENABLE_CJDNS="yes";;
539
+      1) ENABLE_CJDNS="no";;
540
+      255) exit 0;;
541
+  esac
542
+
543
+  if [[ $SYSTEM_TYPE==$VARIANT_WRITER || ! $SYSTEM_TYPE ]]; then
544
+      dialog --backtitle "Freedombone Configuration" \
545
+          --inputbox "Wiki Title" 10 30 2> $data
546
+      sel=$?
547
+      case $sel in
548
+          0) WIKI_TITLE=$(cat $data);;
549
+          1) exit 0;;
550
+          255) exit 0;;
551
+      esac
552
+      if [ ! $WIKI_TITLE ]; then
553
+          exit 5638
554
+      fi
555
+
556
+      dialog --backtitle "Freedombone Configuration" \
557
+          --inputbox "Wiki domain name" 10 30 2> $data
558
+      sel=$?
559
+      case $sel in
560
+          0) WIKI_DOMAIN_NAME=$(cat $data);;
561
+          1) exit 0;;
562
+          255) exit 0;;
563
+      esac
564
+      if [ ! $WIKI_DOMAIN_NAME ]; then
565
+          exit 9236
566
+      fi
567
+      if [ ! $DOMAIN_NAME ]; then
568
+          DOMAIN_NAME=$WIKI_DOMAIN_NAME
569
+      fi
570
+
571
+      if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
572
+          dialog --backtitle "Freedombone Configuration" \
573
+              --inputbox "Wiki FreeDNS subdomain code" 10 30 2> $data
574
+          sel=$?
575
+          case $sel in
576
+              0) WIKI_FREEDNS_SUBDOMAIN_CODE=$(cat $data);;
577
+              1) exit 0;;
578
+              255) exit 0;;
579
+          esac
580
+          if [ ! $WIKI_FREEDNS_SUBDOMAIN_CODE ]; then
581
+              exit 5277
582
+          fi
583
+          if [[ $DOMAIN_NAME==$WIKI_DOMAIN_NAME ]]; then
584
+              FREEDNS_SUBDOMAIN_CODE=$WIKI_FREEDNS_SUBDOMAIN_CODE
585
+          fi
586
+      fi
587
+  fi
588
+
589
+  if [[ $SYSTEM_TYPE==$VARIANT_WRITER || ! $SYSTEM_TYPE ]]; then
590
+      dialog --backtitle "Freedombone Configuration" \
591
+          --inputbox "Blog Title" 10 30 2> $data
592
+      sel=$?
593
+      case $sel in
594
+          0) MY_BLOG_TITLE=$(cat $data);;
595
+          1) exit 0;;
596
+          255) exit 0;;
597
+      esac
598
+
599
+      if [ $MY_BLOG_TITLE ]; then
600
+          dialog --backtitle "Freedombone Configuration" \
601
+              --inputbox "Blog domain name" 10 30 2> $data
602
+          sel=$?
603
+          case $sel in
604
+              0) FULLBLOG_DOMAIN_NAME=$(cat $data);;
605
+              1) exit 0;;
606
+              255) exit 0;;
607
+          esac
608
+          if [ ! $FULLBLOG_DOMAIN_NAME ]; then
609
+              exit 7648
610
+          fi
611
+
612
+          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
613
+              dialog --backtitle "Freedombone Configuration" \
614
+                  --inputbox "Blog FreeDNS subdomain code" 10 30 2> $data
615
+              sel=$?
616
+              case $sel in
617
+                  0) FULLBLOG_FREEDNS_SUBDOMAIN_CODE=$(cat $data);;
618
+                  1) exit 0;;
619
+                  255) exit 0;;
620
+              esac
621
+              if [ ! $FULLBLOG_FREEDNS_SUBDOMAIN_CODE ]; then
622
+                  exit 9875
623
+              fi
624
+          fi
625
+      fi
626
+  fi
627
+
628
+
629
+  if [[ $SYSTEM_TYPE==$VARIANT_CLOUD || ! $SYSTEM_TYPE ]]; then
630
+      dialog --backtitle "Freedombone Configuration" \
631
+          --inputbox "Owncloud domain name" 10 30 2> $data
632
+      sel=$?
633
+      case $sel in
634
+          0) OWNCLOUD_DOMAIN_NAME=$(cat $data);;
635
+          1) exit 0;;
636
+          255) exit 0;;
637
+      esac
638
+
639
+      if [ $OWNCLOUD_DOMAIN_NAME ]; then
640
+          if [ ! $DOMAIN_NAME ]; then
641
+              DOMAIN_NAME=$OWNCLOUD_DOMAIN_NAME
642
+          fi
643
+          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
644
+              dialog --backtitle "Freedombone Configuration" \
645
+                  --inputbox "Owncloud FreeDNS subdomain code" 10 30 2> $data
646
+              sel=$?
647
+              case $sel in
648
+                  0) OWNCLOUD_FREEDNS_SUBDOMAIN_CODE=$(cat $data);;
649
+                  1) exit 0;;
650
+                  255) exit 0;;
651
+              esac
652
+              if [ ! $OWNCLOUD_FREEDNS_SUBDOMAIN_CODE ]; then
653
+                  exit 2583
654
+              fi
655
+              if [[ $DOMAIN_NAME==$OWNCLOUD_DOMAIN_NAME ]]; then
656
+                  FREEDNS_SUBDOMAIN_CODE=$OWNCLOUD_FREEDNS_SUBDOMAIN_CODE
657
+              fi
658
+          fi
659
+      fi
660
+  fi
661
+
662
+  if [[ $SYSTEM_TYPE==$VARIANT_SOCIAL || ! $SYSTEM_TYPE ]]; then
663
+      dialog --backtitle "Freedombone Configuration" \
664
+          --inputbox "RedMatrix domain name" 10 30 2> $data
665
+      sel=$?
666
+      case $sel in
667
+          0) REDMATRIX_DOMAIN_NAME=$(cat $data);;
668
+          1) exit 0;;
669
+          255) exit 0;;
670
+      esac
671
+
672
+      if [ $REDMATRIX_DOMAIN_NAME ]; then
673
+          if [ ! $DOMAIN_NAME ]; then
674
+              DOMAIN_NAME=$REDMATRIX_DOMAIN_NAME
675
+          fi
676
+          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
677
+              dialog --backtitle "Freedombone Configuration" \
678
+                  --inputbox "RedMatrix FreeDNS subdomain code" 10 30 2> $data
679
+              sel=$?
680
+              case $sel in
681
+                  0) REDMATRIX_FREEDNS_SUBDOMAIN_CODE=$(cat $data);;
682
+                  1) exit 0;;
683
+                  255) exit 0;;
684
+              esac
685
+              if [ ! $REDMATRIX_FREEDNS_SUBDOMAIN_CODE ]; then
686
+                  exit 9654
687
+              fi
688
+              if [[ $DOMAIN_NAME==$REDMATRIX_DOMAIN_NAME ]]; then
689
+                  FREEDNS_SUBDOMAIN_CODE=$REDMATRIX_FREEDNS_SUBDOMAIN_CODE
690
+              fi
691
+          fi
692
+      fi
693
+  fi
694
+
695
+  if [[ $SYSTEM_TYPE==$VARIANT_SOCIAL || ! $SYSTEM_TYPE ]]; then
696
+      dialog --backtitle "Freedombone Configuration" \
697
+          --inputbox "Microblog domain name" 10 30 2> $data
698
+      sel=$?
699
+      case $sel in
700
+          0) MICROBLOG_DOMAIN_NAME=$(cat $data);;
701
+          1) exit 0;;
702
+          255) exit 0;;
703
+      esac
704
+
705
+      if [ $MICROBLOG_DOMAIN_NAME ]; then
706
+          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
707
+              dialog --backtitle "Freedombone Configuration" \
708
+                  --inputbox "Microblog FreeDNS subdomain code" 10 30 2> $data
709
+              sel=$?
710
+              case $sel in
711
+                  0) MICROBLOG_FREEDNS_SUBDOMAIN_CODE=$(cat $data);;
712
+                  1) exit 0;;
713
+                  255) exit 0;;
714
+              esac
715
+              if [ ! $MICROBLOG_FREEDNS_SUBDOMAIN_CODE ]; then
716
+                  exit 9508
717
+              fi
718
+          fi
719
+      fi
720
+  fi
721
+
722
+  if [ ! $DOMAIN_NAME ]; then
723
+      dialog --backtitle "Freedombone Configuration" \
724
+          --inputbox "Domain name" 10 30 2> $data
725
+      sel=$?
726
+      case $sel in
727
+          0) DOMAIN_NAME=$(cat $data);;
728
+          1) exit 0;;
729
+          255) exit 0;;
730
+      esac
731
+      if [ ! $DOMAIN_NAME ]; then
732
+          exit 3846
733
+      fi
734
+
735
+      if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
736
+          dialog --backtitle "Freedombone Configuration" \
737
+              --inputbox "FreeDNS subdomain code" 10 30 2> $data
738
+          sel=$?
739
+          case $sel in
740
+              0) FREEDNS_SUBDOMAIN_CODE=$(cat $data);;
741
+              1) exit 0;;
742
+              255) exit 0;;
743
+          esac
744
+          if [ ! $FREEDNS_SUBDOMAIN_CODE ]; then
745
+              exit 7422
746
+          fi
747
+      fi
748
+  fi
749
+  clear
483 750
   exit 0
484 751
 }
485 752