upgrade-run.sh 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #!/bin/sh
  2. if [ -L /dev/fd ]; then
  3. echo fd exists
  4. else
  5. echo fd does not exist, link
  6. ln -s /proc/self/fd /dev/fd
  7. fi
  8. LOG_FILE=/opt/wz_upgrade.log
  9. exec > >(busybox tee -a ${LOG_FILE}) 2>&1
  10. setup() {
  11. echo "Create Upgrade directory"
  12. mkdir /opt/Upgrade
  13. echo "Create backup files directory"
  14. mkdir /opt/Upgrade/preserve
  15. echo "Download latest master"
  16. wget --no-check-certificate https://github.com/gtxaspec/wz_mini_hacks/archive/refs/heads/master.zip -O /opt/Upgrade/wz_mini.zip; sync
  17. echo "Extract archive"
  18. unzip /opt/Upgrade/wz_mini.zip -d /opt/Upgrade/
  19. cp /opt/wz_mini/wz_mini.conf /opt/Upgrade/preserve/
  20. cp -r /opt/wz_mini/etc/ssh /opt/Upgrade/preserve/
  21. cp -r /opt/wz_mini/etc/wireguard /opt/Upgrade/preserve/
  22. sync
  23. reboot
  24. }
  25. upgrade_mode_start() {
  26. set -x
  27. echo UPGRADE MODE
  28. umount /opt/wz_mini/tmp
  29. ls -l /opt/wz_mini/
  30. rm -rf /opt/wz_mini/*
  31. mv /opt/Upgrade/wz_mini_hacks-master/SD_ROOT/wz_mini/* /opt/wz_mini/
  32. rm -f /opt/factory_t31_ZMC6tiIDQN
  33. mv /opt/Upgrade/wz_mini_hacks-master/SD_ROOT/factory_t31_ZMC6tiIDQN /opt/factory_t31_ZMC6tiIDQN
  34. diff /opt/wz_mini/wz_mini.conf /opt/Upgrade/preserve/wz_mini.conf
  35. cp /opt/Upgrade/preserve/wz_mini.conf /opt/wz_mini/
  36. cp /opt/Upgrade/preserve/ssh/* /opt/wz_mini/etc/ssh/
  37. cp -r /opt/Upgrade/preserve/wireguard /opt/wz_mini/etc/
  38. rm -rf /opt/Upgrade
  39. sync
  40. reboot
  41. }
  42. if [[ -e /tmp/dbgflag ]]; then
  43. upgrade_mode_start
  44. else
  45. read -r -p "${1:-wz_mini, this will download the latest version from github and upgrade your system. Are you sure? [y/N]} " response
  46. case "$response" in
  47. [yY][eE][sS]|[yY])
  48. if [[ -d /opt/Upgrade ]]; then
  49. echo "WARNING: Old Upgrade directory exists"
  50. read -r -p "${1:-Unable to proceed, must DELETE old Upgrade directory, are you sure? [y/N]} " response
  51. case "$response" in
  52. [yY][eE][sS]|[yY])
  53. rm -rf /opt/Upgrade
  54. sync
  55. setup
  56. ;;
  57. *)
  58. echo "User denied directory removal, exit"
  59. ;;
  60. esac
  61. else
  62. setup
  63. fi
  64. ;;
  65. *)
  66. echo "User declined system update, exit"
  67. ;;
  68. esac
  69. fi