| 
				
			 | 
			
			
				@@ -1576,6 +1576,67 @@ function get_batman_ipv6_address { 
			 | 
		
	
		
			
			| 
				1576
			 | 
			
				1576
			 | 
			
			
				   fi 
			 | 
		
	
		
			
			| 
				1577
			 | 
			
				1577
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				1578
			 | 
			
				1578
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				1579
			 | 
			
			
				+function install_vpn_tunnel { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1580
			 | 
			
			
				+  if ! grep -q "repo.universe-factory.net" /etc/apt/sources.list; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1581
			 | 
			
			
				+      echo 'deb http://repo.universe-factory.net/debian/ sid main' >> /etc/apt/sources.list 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1582
			 | 
			
			
				+      gpg --keyserver pgpkeys.mit.edu --recv-key 16EF3F64CB201D9C 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1583
			 | 
			
			
				+      if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1584
			 | 
			
			
				+          exit 76272 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1585
			 | 
			
			
				+      fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1586
			 | 
			
			
				+      gpg -a --export 16EF3F64CB201D9C | sudo apt-key add - 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1587
			 | 
			
			
				+      apt-get update 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1588
			 | 
			
			
				+      apt-get -y install fastd 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1589
			 | 
			
			
				+      if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1590
			 | 
			
			
				+          exit 52026 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1591
			 | 
			
			
				+      fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1592
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1593
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1594
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1595
			 | 
			
			
				+# ath9k_htc driver 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1596
			 | 
			
			
				+function install_atheros_wifi { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1597
			 | 
			
			
				+  if grep -Fxq "install_atheros_wifi" $COMPLETION_FILE; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1598
			 | 
			
			
				+      return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1599
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1600
			 | 
			
			
				+  if [ $INSTALLING_ON_BBB != "yes" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1601
			 | 
			
			
				+      return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1602
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1603
			 | 
			
			
				+  if [[ $ENABLE_BABEL != "yes" && $ENABLE_BATMAN != "yes" && $ENABLE_CJDNS != "yes" ]]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1604
			 | 
			
			
				+      return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1605
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1606
			 | 
			
			
				+  if [ -d $INSTALL_DIR/open-ath9k-htc-firmware ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1607
			 | 
			
			
				+      return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1608
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1609
			 | 
			
			
				+  apt-get -y install build-essential cmake git m4 texinfo 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1610
			 | 
			
			
				+  if [ ! -d $INSTALL_DIR ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1611
			 | 
			
			
				+      mkdir -p $INSTALL_DIR 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1612
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1613
			 | 
			
			
				+  cd $INSTALL_DIR 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1614
			 | 
			
			
				+  if [ ! -d $INSTALL_DIR/open-ath9k-htc-firmware ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1615
			 | 
			
			
				+      git clone https://github.com/qca/open-ath9k-htc-firmware.git 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1616
			 | 
			
			
				+      if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1617
			 | 
			
			
				+          rm -rf $INSTALL_DIR/open-ath9k-htc-firmware 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1618
			 | 
			
			
				+          exit 74283 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1619
			 | 
			
			
				+      fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1620
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1621
			 | 
			
			
				+  cd $INSTALL_DIR/open-ath9k-htc-firmware 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1622
			 | 
			
			
				+  git checkout 1.4.0 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1623
			 | 
			
			
				+  make toolchain 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1624
			 | 
			
			
				+  if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1625
			 | 
			
			
				+      rm -rf $INSTALL_DIR/open-ath9k-htc-firmware 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1626
			 | 
			
			
				+      exit 24820 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1627
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1628
			 | 
			
			
				+  make firmware 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1629
			 | 
			
			
				+  if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1630
			 | 
			
			
				+      rm -rf $INSTALL_DIR/open-ath9k-htc-firmware 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1631
			 | 
			
			
				+      exit 63412 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1632
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1633
			 | 
			
			
				+  cp target_firmware/*.fw /lib/firmware/ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1634
			 | 
			
			
				+  if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1635
			 | 
			
			
				+      exit 74681 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1636
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1637
			 | 
			
			
				+  echo 'install_atheros_wifi' >> $COMPLETION_FILE 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1638
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1639
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				1579
			 | 
			
				1640
			 | 
			
			
				 function mesh_babel { 
			 | 
		
	
		
			
			| 
				1580
			 | 
			
				1641
			 | 
			
			
				   if grep -Fxq "mesh_babel" $COMPLETION_FILE; then 
			 | 
		
	
		
			
			| 
				1581
			 | 
			
				1642
			 | 
			
			
				       return 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -1617,7 +1678,10 @@ function mesh_batman_bridge { 
			 | 
		
	
		
			
			| 
				1617
			 | 
			
				1678
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				1618
			 | 
			
				1679
			 | 
			
			
				   apt-get -y install iproute bridge-utils libnetfilter-conntrack3 batctl 
			 | 
		
	
		
			
			| 
				1619
			 | 
			
				1680
			 | 
			
			
				   apt-get -y install python-dev libevent-dev ebtables python-pip git 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1681
			 | 
			
			
				+  apt-get -y install avahi-utils avahi-autoipd wireless-tools 
			 | 
		
	
		
			
			| 
				1620
			 | 
			
				1682
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				1683
			 | 
			
			
				+  install_vpn_tunnel 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1684
			 | 
			
			
				+   
			 | 
		
	
		
			
			| 
				1621
			 | 
			
				1685
			 | 
			
			
				   modprobe batman-adv 
			 | 
		
	
		
			
			| 
				1622
			 | 
			
				1686
			 | 
			
			
				   [ $? -ne 0 ] && echo "B.A.T.M.A.N module not available" && exit 76482 
			 | 
		
	
		
			
			| 
				1623
			 | 
			
				1687
			 | 
			
			
				   if ! grep -q "batman_adv" /etc/modules; then 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -1640,51 +1704,23 @@ function mesh_batman_bridge { 
			 | 
		
	
		
			
			| 
				1640
			 | 
			
				1704
			 | 
			
			
				   if ! grep -q "# Mesh Networking (B.A.T.M.A.N)" /etc/network/interfaces; then 
			 | 
		
	
		
			
			| 
				1641
			 | 
			
				1705
			 | 
			
			
				       echo '' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				1642
			 | 
			
				1706
			 | 
			
			
				       echo '# Mesh Networking (B.A.T.M.A.N)' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				1643
			 | 
			
				
			 | 
			
			
				-      echo 'iface bat0 inet6 static' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				1644
			 | 
			
				
			 | 
			
			
				-      echo '    pre-up modprobe ipv6' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				1645
			 | 
			
				
			 | 
			
			
				-      echo "    address $BATMAN_IPV6" >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				1646
			 | 
			
				
			 | 
			
			
				-      echo '    netmask 64' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				1647
			 | 
			
				
			 | 
			
			
				-      service networking restart 
			 | 
		
	
		
			
			| 
				1648
			 | 
			
				
			 | 
			
			
				-      if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				1649
			 | 
			
				
			 | 
			
			
				-          systemctl status networking.service 
			 | 
		
	
		
			
			| 
				1650
			 | 
			
				
			 | 
			
			
				-          exit 6949 
			 | 
		
	
		
			
			| 
				1651
			 | 
			
				
			 | 
			
			
				-      fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1707
			 | 
			
			
				+      echo 'auto wlan0' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1708
			 | 
			
			
				+      echo 'iface wlan0 inet static' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1709
			 | 
			
			
				+      echo '    pre-up modprobe batman_adv' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1710
			 | 
			
			
				+      echo '    post-down modprobe -rf batman_adv' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1711
			 | 
			
			
				+      echo '    address 0.0.0.0' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1712
			 | 
			
			
				+      echo '    mtu 1532' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1713
			 | 
			
			
				+      echo '    wireless-mode ad-hoc' >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1714
			 | 
			
			
				+      echo "    wireless-essid mesh" >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1715
			 | 
			
			
				+      echo "    wireless-channel 2" >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1716
			 | 
			
			
				+      echo "    wireless-ap 02:12:34:56:78:9A" >> /etc/network/interfaces 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1717
			 | 
			
			
				+  fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1718
			 | 
			
			
				+  systemctl restart networking.service 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1719
			 | 
			
			
				+  if [ ! "$?" = "0" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1720
			 | 
			
			
				+      systemctl status networking.service 
			 | 
		
	
		
			
			| 
				
			 | 
			
				1721
			 | 
			
			
				+      exit 6949 
			 | 
		
	
		
			
			| 
				1652
			 | 
			
				1722
			 | 
			
			
				   fi 
			 | 
		
	
		
			
			| 
				1653
			 | 
			
				1723
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				1654
			 | 
			
				
			 | 
			
			
				-  echo '#!/bin/bash' > /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1655
			 | 
			
				
			 | 
			
			
				-  echo '' > /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1656
			 | 
			
				
			 | 
			
			
				-  echo '# stop network manager to make the mesh network work' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1657
			 | 
			
				
			 | 
			
			
				-  echo 'systemctl stop networking' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1658
			 | 
			
				
			 | 
			
			
				-  echo '' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1659
			 | 
			
				
			 | 
			
			
				-  echo -n '# configure the wlan interface to operate with ' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1660
			 | 
			
				
			 | 
			
			
				-  echo 'mtus of 1532(batman requires it) and turn enc off ' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1661
			 | 
			
				
			 | 
			
			
				-  echo 'to ensure it works' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1662
			 | 
			
				
			 | 
			
			
				-  echo 'ifconfig wlan0 down' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1663
			 | 
			
				
			 | 
			
			
				-  echo 'ifconfig wlan0 mtu 1532' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1664
			 | 
			
				
			 | 
			
			
				-  echo 'iwconfig wlan0 enc off' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1665
			 | 
			
				
			 | 
			
			
				-  echo '' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1666
			 | 
			
				
			 | 
			
			
				-  echo '# add the interface to the ad-hoc network - or create it.' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1667
			 | 
			
				
			 | 
			
			
				-  echo -n "iwconfig wlan0 mode ad-hoc essid mesh ap " >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1668
			 | 
			
				
			 | 
			
			
				-  echo "$BATMAN_IPV6 channel 2" >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1669
			 | 
			
				
			 | 
			
			
				-  echo '' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1670
			 | 
			
				
			 | 
			
			
				-  echo -n '# add wlan0 to the batman-adv virtual interface(so it can ' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1671
			 | 
			
				
			 | 
			
			
				-  echo 'communicate with other batman-adv nodes)' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1672
			 | 
			
				
			 | 
			
			
				-  echo 'batctl if add wlan0' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1673
			 | 
			
				
			 | 
			
			
				-  echo 'ifconfig wlan0 up' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1674
			 | 
			
				
			 | 
			
			
				-  echo 'ifconfig bat0 up' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1675
			 | 
			
				
			 | 
			
			
				-  echo '' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1676
			 | 
			
				
			 | 
			
			
				-  echo -n '# make the bridge linking the batman-adv virtual ' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1677
			 | 
			
				
			 | 
			
			
				-  echo 'interface to the ethernet port' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1678
			 | 
			
				
			 | 
			
			
				-  echo 'brctl addbr bridge-link' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1679
			 | 
			
				
			 | 
			
			
				-  echo 'brctl addif bridge-link bat0' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1680
			 | 
			
				
			 | 
			
			
				-  echo '#brctl addif bridge-link eth0' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1681
			 | 
			
				
			 | 
			
			
				-  echo '' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1682
			 | 
			
				
			 | 
			
			
				-  echo '# get the ip address for the bridge from the dhcp server' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1683
			 | 
			
				
			 | 
			
			
				-  echo 'dhclient bridge-link' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1684
			 | 
			
				
			 | 
			
			
				-  echo '' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1685
			 | 
			
				
			 | 
			
			
				-  echo 'exit 0' >> /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1686
			 | 
			
				
			 | 
			
			
				-  chmod +x /usr/bin/mesh 
			 | 
		
	
		
			
			| 
				1687
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				1688
			 | 
			
				1724
			 | 
			
			
				   if ! grep -q "Mesh Networking (B.A.T.M.A.N)" /home/$MY_USERNAME/README; then 
			 | 
		
	
		
			
			| 
				1689
			 | 
			
				1725
			 | 
			
			
				       echo '' >> /home/$MY_USERNAME/README 
			 | 
		
	
		
			
			| 
				1690
			 | 
			
				1726
			 | 
			
			
				       echo '' >> /home/$MY_USERNAME/README 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -9813,6 +9849,7 @@ set_your_domain_name 
			 | 
		
	
		
			
			| 
				9813
			 | 
			
				9849
			 | 
			
			
				 time_synchronisation 
			 | 
		
	
		
			
			| 
				9814
			 | 
			
				9850
			 | 
			
			
				 configure_internet_protocol 
			 | 
		
	
		
			
			| 
				9815
			 | 
			
				9851
			 | 
			
			
				 create_git_project 
			 | 
		
	
		
			
			| 
				
			 | 
			
				9852
			 | 
			
			
				+install_atheros_wifi 
			 | 
		
	
		
			
			| 
				9816
			 | 
			
				9853
			 | 
			
			
				 mesh_cjdns 
			 | 
		
	
		
			
			| 
				9817
			 | 
			
				9854
			 | 
			
			
				 mesh_cjdns_tools 
			 | 
		
	
		
			
			| 
				9818
			 | 
			
				9855
			 | 
			
			
				 mesh_batman_bridge 
			 |