From d86e3cbc272bf69754022a731feaa1184c17cb28 Mon Sep 17 00:00:00 2001 From: Simone Margaritelli <evilsocket@gmail.com> Date: Tue, 8 Oct 2019 19:30:18 +0200 Subject: [PATCH] misc: removed legacy update script --- scripts/update_pwnagotchi.sh | 121 ----------------------------------- 1 file changed, 121 deletions(-) delete mode 100755 scripts/update_pwnagotchi.sh diff --git a/scripts/update_pwnagotchi.sh b/scripts/update_pwnagotchi.sh deleted file mode 100755 index 9299f1a..0000000 --- a/scripts/update_pwnagotchi.sh +++ /dev/null @@ -1,121 +0,0 @@ -#!/bin/bash -# Default variables -GIT_FOLDER="/tmp/pwnagotchi" -GIT_URL="https://github.com/evilsocket/pwnagotchi/" -VERSION="master" -SUPPORTED_RESTART_MODES=( 'auto' 'manual' ) -MODE="auto" -BACKUPCONFIG=0 -RESTORECONFIG=0 - -# Functions -function usage() { - cat <<EOF - - usage: $0 [OPTIONS] - Note: This should be run from the pwnagotchi itself! - - Options: - -v # Version to update to, can be a branch or commit. (default: master) - -u # Url to clone from. (default: https://github.com/evilsocket/pwnagotchi) - -m # Mode to restart to. (Supported: ${SUPPORTED_RESTART_MODES[*]}; default: auto) - -b # Backup the current pwnagotchi config and hostname references, then overwrite with defaults. - -r # Restore the current pwnagotchi config and hostname references after upgrade. (-b will be enabled.) - -h # Shows this help. - -EOF - exit 0 -} - -function test_root() { - if ! [ $(id -u) = 0 ]; then - echo "[!] This script must be run as root." - exit 1 - fi -} - -function test_github() { - wget -q --spider $GIT_URL - if [ $? -ne 0 ]; then - echo "[!] Cannot reach github. This script requires internet access, ensure connection sharing is working." - exit 2 - fi -} - -while getopts "v:u:m:brh" o; do - case "${o}" in - v) - VERSION="${OPTARG}" - ;; - u) - GIT_URL="${OPTARG}" - ;; - m) - if [[ "${SUPPORTED_RESTART_MODES[*]}" =~ ${OPTARG} ]]; then - MODE="${OPTARG}" - else - usage - fi - ;; - b) - BACKUPCONFIG=1 - ;; - r) - BACKUPCONFIG=1 - RESTORECONFIG=1 - ;; - h) - usage - ;; - *) - usage - ;; - esac -done -shift $((OPTIND-1)) - -echo "[+] Checking prerequisites." -test_root -test_github - -# clean up old files, clone master, set checkout to commit if needed. -echo "[+] Cloning to $GIT_FOLDER..." -rm $GIT_FOLDER -rf -git clone $GIT_URL $GIT_FOLDER -q -cd $GIT_FOLDER -if [ $VERSION != "master" ]; then - git checkout $VERSION -q -fi - -if [ $BACKUPCONFIG -eq 1 ]; then - echo "[+] Creating backup of config.yml and hostname references" - mv /root/pwnagotchi/config.yml /root/config.yml.bak -f - mv /etc/hosts /root/hosts.bak -f - mv /etc/hostname /root/hostname.bak -f - mv /etc/motd /etc/motd.bak -f - mv /etc/network/interfaces /root/interfaces.bak -f -fi - -echo "[+] Installing $(git log -1 --format="%h")" -rm /root/pwnagotchi -rf # ensures old files are removed -rsync -aPq $GIT_FOLDER/sdcard/boot/* /boot/ -rsync -aPq $GIT_FOLDER/sdcard/rootfs/* / -cd /tmp -rm $GIT_FOLDER -rf - -if [ $RESTORECONFIG -eq 1 ]; then - echo "[+] Restoring backup of config.yml and hostname references" - mv /root/config.yml.bak /root/pwnagotchi/config.yml -f - mv /root/hosts.bak /etc/hosts -f - mv /root/hostname.bak /etc/hostname -f - mv /root/interfaces.bak /etc/network/interfaces -f - mv /etc/motd.bak /etc/motd -f -fi - -echo "[+] Restarting pwnagotchi in $MODE mode. $( screen -X -S pwnagotchi quit)" -if [ $MODE == "auto" ]; then - sudo -H -u root /usr/bin/screen -dmS pwnagotchi -c /root/pwnagotchi/data/screenrc.auto -elif [ $MODE == "manual" ]; then - sudo -H -u root /usr/bin/screen -dmS pwnagotchi -c /root/pwnagotchi/data/screenrc.manual -fi -echo "[+] Finished"