Selaa lähdekoodia

Fix babel script

Bob Mottram 9 vuotta sitten
vanhempi
commit
c98cecc97f
2 muutettua tiedostoa jossa 42 lisäystä ja 8 poistoa
  1. 40
    7
      src/freedombone
  2. 2
    1
      src/freedombone-client

+ 40
- 7
src/freedombone Näytä tiedosto

@@ -1672,18 +1672,49 @@ function mesh_babel {
1672 1672
 
1673 1673
   babel_script=/var/lib/babel
1674 1674
 
1675
-  echo '#!/bin/sh' > $babel_script
1675
+  echo '#!/bin/bash' > $babel_script
1676
+  echo '' >> $babel_script
1677
+  echo 'if [[ $1 == "ls" || $1 == "list" ]]; then' >> $babel_script
1678
+  echo '    avahi-browse --all' >> $babel_script
1679
+  echo '    exit 0' >> $babel_script
1680
+  echo 'fi' >> $babel_script
1681
+  echo '' >> $babel_script
1682
+  echo 'if [[ $1 == "start" ]]; then' >> $babel_script
1683
+  echo '    sed -i "s|#host-name=.*|host-name=$(hostname)|g" /etc/avahi/avahi-daemon.conf' >> $babel_script
1684
+  echo '    sed -i "s|host-name=.*|host-name=$(hostname)|g" /etc/avahi/avahi-daemon.conf' >> $babel_script
1685
+  echo '    if [ -f /bin/systemctl ]; then' >> $babel_script
1686
+  echo '        systemctl restart avahi-daemon' >> $babel_script
1687
+  echo '    else' >> $babel_script
1688
+  echo '        service avahi-daemon restart' >> $babel_script
1689
+  echo '    fi' >> $babel_script
1690
+  echo 'fi' >> $babel_script
1691
+  echo '' >> $babel_script
1676 1692
   echo 'IFACE=wlan0' >> $babel_script
1677
-  echo 'IFACE_EXISTS=$(grep "$IFACE" /proc/net/dev)' >> $babel_script
1693
+  echo 'if grep -q "wlan1" /proc/net/dev; then' >> $babel_script
1694
+  echo '    IFACE=wlan1' >> $babel_script
1695
+  echo 'fi' >> $babel_script
1678 1696
   echo '' >> $babel_script
1679
-  echo 'if [[ ! $IFACE_EXISTS || $1 == "stop" ]]; then' >> $babel_script
1680
-  echo '    echo "Interface $IFACE was not found"' >> $babel_script
1697
+  echo 'if [[ ! grep -q "$IFACE" /proc/net/dev || $1 == "stop" ]]; then' >> $babel_script
1698
+  echo '    if ! grep -q "$IFACE" /proc/net/dev; then' >> $babel_script
1699
+  echo '        echo "Interface $IFACE was not found"' >> $babel_script
1700
+  echo '    else' >> $babel_script
1701
+  echo '        echo "Stopping"' >> $babel_script
1702
+  echo '    fi' >> $babel_script
1681 1703
   echo '    ifconfig $IFACE down' >> $babel_script
1682
-  echo '    systemctl restart network-manager' >> $babel_script
1704
+  echo '    pkill babeld' >> $babel_script
1705
+  echo '    if [ -f /bin/systemctl ]; then' >> $babel_script
1706
+  echo '        systemctl restart network-manager' >> $babel_script
1707
+  echo '    else' >> $babel_script
1708
+  echo '        service network-manager restart' >> $babel_script
1709
+  echo '    fi' >> $babel_script
1683 1710
   echo '    exit 1' >> $babel_script
1684 1711
   echo 'fi' >> $babel_script
1685 1712
   echo '' >> $babel_script
1686
-  echo 'systemctl stop network-manager' >> $babel_script
1713
+  echo 'if [ -f /bin/systemctl ]; then' >> $babel_script
1714
+  echo '    systemctl stop network-manager' >> $babel_script
1715
+  echo 'else' >> $babel_script
1716
+  echo '    service network-manager stop' >> $babel_script
1717
+  echo 'fi' >> $babel_script
1687 1718
   echo 'ifconfig $IFACE down' >> $babel_script
1688 1719
   echo -n 'iwconfig $IFACE mode ad-hoc channel ' >> $babel_script
1689 1720
   echo "$WIFI_CHANNEL essid \"$ESSID\"" >> $babel_script
@@ -1693,7 +1724,8 @@ function mesh_babel {
1693 1724
   echo -n "$LOCAL_NETWORK_STATIC_IP_ADDRESS netmask " >> $babel_script
1694 1725
   echo '255.255.255.0 broadcast 192.168.13.255' >> $babel_script
1695 1726
   echo -n 'babeld -D $IFACE:avahi -p ' >> $babel_script
1696
-  echo "$BABEL_PORT -d 5 wlan0" >> $babel_script
1727
+  echo -n "$BABEL_PORT -d 5 " >> $babel_script
1728
+  echo '$IFACE' >> $babel_script
1697 1729
   echo 'exit 0' >> $babel_script
1698 1730
   chmod +x $babel_script
1699 1731
 
@@ -1781,6 +1813,7 @@ function mesh_batman_bridge {
1781 1813
   echo '    modprobe batman-adv' >> $batman_script
1782 1814
   echo '    batctl if add $IFACE' >> $batman_script
1783 1815
   echo '    ifconfig $IFACE up' >> $batman_script
1816
+  echo '    avahi-autoipd $IFACE' >> $batman_script
1784 1817
   echo '    ifconfig bat0 up promisc' >> $batman_script
1785 1818
   echo '' >> $batman_script
1786 1819
   echo '    #Use persistent HWAddr' >> $batman_script

+ 2
- 1
src/freedombone-client Näytä tiedosto

@@ -147,7 +147,8 @@ function mesh_babel {
147 147
   echo -n "$LOCAL_NETWORK_STATIC_IP_ADDRESS netmask " >> $babel_script
148 148
   echo '255.255.255.0 broadcast 192.168.13.255' >> $babel_script
149 149
   echo -n 'babeld -D $IFACE:avahi -p ' >> $babel_script
150
-  echo "$BABEL_PORT -d 5 wlan0" >> $babel_script
150
+  echo -n "$BABEL_PORT -d 5 " >> $babel_script
151
+  echo '$IFACE' >> $babel_script
151 152
   echo 'exit 0' >> $babel_script
152 153
   chmod +x $babel_script
153 154
   sudo mv $babel_script /usr/bin/babel