1
0
mirror of https://github.com/danbee/dotfiles-local synced 2025-03-04 08:49:07 +00:00
dotfiles-local/bitbar/sshuttle.sh
2018-07-17 17:32:30 -04:00

45 lines
2.8 KiB
Bash
Executable File

#!/bin/bash
SSHUTTLE_CONNECTED="iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAKGSURBVFhHvZc/SBxBFIevCAGr2FgoeOehlYIWpoh2WgUE+3iH12hnkTJKwCZdmnQpbcTK3kK0CegeIoIogViInY1gYano79N7x2Zubndu3fMHH7h7szNv3rw/Y+GNNSF+i1NxI76LN9GM2BWPDhjRVRXFtnAXNvBEV/RO4N478Ud8FBizJNi1GcBx5C4WY2csgAELYkSYasIMICZyU4/4Ke6FLWDwblWgPsE7YiI3EWQXwl04DkbgCeCZb16tD4JzdBdrB+4nKKFFTPZL/BVX4p8ggLYErv0qOM85MS/WxbXwLdQOApC4ICBbtCF8H+WNxUJTnMmAIIj2hO+jvCA7SNH/xEvc3W0jCEJStEWcKwO6bQRx1FabgkFxI/Yb7/KAFGXOtiIDiHwbTJTiLneirATl/LSwKkaqmEGvpaN6T277JnHBQKv3SVAn8G6wSBGKj28yAy/hUsamGcGGOhbnfyt8EwLlFGEEnvCNMaiYmWSp6WI7wgiLlyQo25lEuXQno1Sj0DgBNpJJFI34RPRu8rjTfkEDy6RDYZMQaMSF71KZRmL1SxJtmQlIoykRknI+aOXhiqrFWfFDf1oVxBOd9vw4pHSYomp55eBL6QEj9Jh0lXahYmKwr3fQW9J1tFzsZ/F6tXSuR+4HDwIjmJjjwBOcJ9lBZMfrhN1wfF0U49LFrp93Xymt6bHn26e+zxwFhr2MaBELxismDczXyrnepYvFosrQ5Umt1Ns8ihdjkkQppiZYQfLdJ/Bess7WR99HC8Uddtv0hJ4bP4eILmqdM24ENSO9EUW14UmMqFfKSweVwVszpvFzqFjIvdSEq744PHa8WB7HkMarrCJAqRnxf8USVCg8ASId/i7okC2bAAAAAElFTkSuQmCC"
SSHUTTLE_DISCONNECTED="iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAGjSURBVFhHxZY9TsRADIVT0FHQcQEuQEFFR0+JaKgouP8V8CftkyzHMxkPk/Ckp+xms/bz72S7GI/GV+OH8cv4bLwEOH43/gQi4lTcG9+M0bFIJk4D6f02EjkZQMzT7Z4EUI7lwBmR4QBnOH0wCnyXAJ5dhjsjEcl4pBqOTPCdzCwDkXwao9NIMgH5vCT6o6gjST+R05g7yBiRMB5c9fCLkRRiQOQez2WOWuR5+oIy7NAbl5XcLR9qgiIykC2LlUznnpuk+woRaeNpLs8W0V06qv9ZIrCLzSb4UR0tEaQrGprl0Mx7h4xKdcRaLO17ZjszEolA7fseCaKb+gwjtSdbGD4SQUBlUH9/ZEYyNQARveegni1DoxmpLdb63RNx0wJwFA3qABntEzgtIJ5w9AU1r54Xu70/Ct+INBp9MbOYppoQKAOMEc02MnIZVbYytJSI+i8Lif9PoVJrZSkrEWu9DL2zIQLDlAPjXPVW5Oefz60DDHFlYMi/RmeITdk6RacyUIHfCZmI0kE0C8qkRvUiKCHXSyCHXsS/gAZlZxz10A3b9gvc8bJNvYvKrAAAAABJRU5ErkJggg=="
VPN_EXECUTABLE=/usr/local/bin/sshuttle
VPN_HOST="vps2.danbee.co.uk"
VPN_USERNAME="danbarber"
VPN_PIDFILE="/tmp/sshuttle.pid"
# Command to run to disconnect VPN
VPN_DISCONNECT_CMD="pkill -F $VPN_PIDFILE"
case "$1" in
connect)
$VPN_EXECUTABLE -D --dns -r $VPN_USERNAME@$VPN_HOST 0.0.0.0/0 --pidfile $VPN_PIDFILE
# Wait for connection so menu item refreshes instantly
until eval "$VPN_CONNECTED"; do sleep 1; done
;;
disconnect)
eval "$VPN_DISCONNECT_CMD"
# Wait for disconnection so menu item refreshes instantly
until [ ! -f $VPN_PIDFILE ]; do sleep 1; done
;;
esac
if [ -f $VPN_PIDFILE ]; then
echo "| templateImage=$SSHUTTLE_CONNECTED"
echo '---'
echo "Disconnect Sshuttle | bash='$0' param1=disconnect terminal=false refresh=true"
exit
else
echo "| templateImage=$SSHUTTLE_DISCONNECTED"
echo '---'
echo "Connect Sshuttle | bash='$0' param1=connect terminal=false refresh=true"
# For debugging!
#echo "Connect VPN | bash='$0' param1=connect terminal=true refresh=true"
exit
fi