diff options
Diffstat (limited to 'mining/bin')
| -rwxr-xr-x | mining/bin/ensure-wlan0 | 32 | 
1 files changed, 20 insertions, 12 deletions
| diff --git a/mining/bin/ensure-wlan0 b/mining/bin/ensure-wlan0 index 92839a13..77587156 100755 --- a/mining/bin/ensure-wlan0 +++ b/mining/bin/ensure-wlan0 @@ -6,20 +6,28 @@ if test "${nosudo-false}" != true -a `id -u` != 0; then    exit 23 # go to hell  fi -if ! ifconfig wlan0 | grep -q 'inet addr'; then -  if ! grep -q wlan0 /etc/network/interfaces; then -    cat >> /etc/network/interfaces <<EOF -# generated by rc.local -auto wlan0 -iface wlan0 inet dhcp -wpa_conf /etc/wpa_supplicant/wpa_supplicant.conf -EOF +has_internet() { +  curl -sS google.com >/dev/null +} + +if ! has_internet; then + +  ## get rid of the nightmare applet +  pkill -9 nm-applet +  if test -x "`type -p nm-applet`"; then +    rm -vf "`type -p nm-applet`"    fi -  beep -l 50 -f 2000; /etc/init.d/network-manager restart -  beep -l 50 -f 2000; ifdown wlan0 -  beep -l 50 -f 2000; ifup wlan0 -  if ifconfig wlan0 | grep -q 'inet addr'; then +  beep -l 50 -f 2000; pkill wpa_supplicant +  beep -l 50 -f 2000; wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf & +  while ! wpa_cli status | grep -q wpa_state=COMPLETED; do +    beep -l 50 -f 2000 -D 50 -n -l 50 -f 2000 +    sleep 1 +  done +  beep -l 50 -f 2000; dhcpcd -x wlan0 +  beep -l 50 -f 2000; dhcpcd wlan0 +  #echo nameserver 8.8.8.8 >/etc/resolv.conf +  if has_internet; then      beep -l 50 -f 2000 -n -l 100 -f 3000    else      beep -l 50 -f 2000 -n -l 100 -f 1000 | 
