pwnagotchi_angrygotchi/angry_scripts/setupWardrive.sh
2026-04-09 17:20:59 +00:00

59 lines
No EOL
1.3 KiB
Bash

#!/bin/bash
set -e
function yes_or_no {
while true; do
read -p "$*Are you using GPSD Forwarder?[y/n]: " yn
case $yn in
[Yy]*) GPSD_FORWARDER=true; return ;;
[Nn]*) GPSD_FORWARDER=false; return ;;
esac
done
}
function create_service {
echo "Creating new wardrive.service at ~/wardrive.service"
cat << EOF > ~/wardrive.service
[Unit]
Description=AngryOxide Wardrive
[Service]
ExecStart=/bin/bash $HOME/wardrive.sh $WLAN_DEVICE $(if [[ "$GPSD_FORWARDER" == "true" ]]; then echo $GPSD_FORWARDER_SETTINGS; fi)
StandardOutput=journal
StandardError=journal
SyslogIdentifier=Wardrive
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
EOF
}
sudo apt install gpsd
echo "Enter your wireless device name (default: wlan1):"
read -r WLAN_DEVICE
WLAN_DEVICE="${WLAN_DEVICE:-wlan1}"
GPS_DEVICE=false
GPSD_FORWARDER=false
yes_or_no $forwarder
IP=""
PORT=""
# Add error handling for IP and port
if [ $GPSD_FORWARDER=true ]; then
read -p "Enter the IP of your GPSD Forwarder Server: " IP
read -p "Enter the PORT of your GPSD Forwarder Server: " PORT
fi
GPSD_FORWARDER_SETTINGS=$IP:$PORT
create_service
sudo mv ~/wardrive.service /etc/systemd/system/wardrive.service
sudo systemctl daemon-reload
sudo systemctl enable wardrive.service