delete-old-service.sh 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. #!/bin/bash
  2. ###
  3. # @Author: LinkLeong link@icewhale.com
  4. # @Date: 2022-06-30 10:08:33
  5. # @LastEditors: LinkLeong
  6. # @LastEditTime: 2022-07-01 11:17:54
  7. # @FilePath: /CasaOS/shell/delete-old-service.sh
  8. # @Description:
  9. ###
  10. ((EUID)) && sudo_cmd="sudo"
  11. # SYSTEM INFO
  12. readonly UNAME_M="$(uname -m)"
  13. # CasaOS PATHS
  14. readonly CASA_REPO=IceWhaleTech/CasaOS
  15. readonly CASA_UNZIP_TEMP_FOLDER=/tmp/casaos
  16. readonly CASA_BIN=casaos
  17. readonly CASA_BIN_PATH=/usr/bin/casaos
  18. readonly CASA_CONF_PATH=/etc/casaos.conf
  19. readonly CASA_SERVICE_PATH=/etc/systemd/system/casaos.service
  20. readonly CASA_HELPER_PATH=/usr/share/casaos/shell/
  21. readonly CASA_USER_CONF_PATH=/var/lib/casaos/conf/
  22. readonly CASA_DB_PATH=/var/lib/casaos/db/
  23. readonly CASA_TEMP_PATH=/var/lib/casaos/temp/
  24. readonly CASA_LOGS_PATH=/var/log/casaos/
  25. readonly CASA_PACKAGE_EXT=".tar.gz"
  26. readonly CASA_RELEASE_API="https://api.github.com/repos/${CASA_REPO}/releases"
  27. readonly CASA_OPENWRT_DOCS="https://github.com/IceWhaleTech/CasaOS-OpenWrt"
  28. readonly COLOUR_RESET='\e[0m'
  29. readonly aCOLOUR=(
  30. '\e[38;5;154m' # green | Lines, bullets and separators
  31. '\e[1m' # Bold white | Main descriptions
  32. '\e[90m' # Grey | Credits
  33. '\e[91m' # Red | Update notifications Alert
  34. '\e[33m' # Yellow | Emphasis
  35. )
  36. Target_Arch=""
  37. Target_Distro="debian"
  38. Target_OS="linux"
  39. Casa_Tag=""
  40. #######################################
  41. # Custom printing function
  42. # Globals:
  43. # None
  44. # Arguments:
  45. # $1 0:OK 1:FAILED 2:INFO 3:NOTICE
  46. # message
  47. # Returns:
  48. # None
  49. #######################################
  50. Show() {
  51. # OK
  52. if (($1 == 0)); then
  53. echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[0]} OK $COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
  54. # FAILED
  55. elif (($1 == 1)); then
  56. echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[3]}FAILED$COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
  57. # INFO
  58. elif (($1 == 2)); then
  59. echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[0]} INFO $COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
  60. # NOTICE
  61. elif (($1 == 3)); then
  62. echo -e "${aCOLOUR[2]}[$COLOUR_RESET${aCOLOUR[4]}NOTICE$COLOUR_RESET${aCOLOUR[2]}]$COLOUR_RESET $2"
  63. fi
  64. }
  65. Warn() {
  66. echo -e "${aCOLOUR[3]}$1$COLOUR_RESET"
  67. }
  68. # 0 Check_exist
  69. Check_Exist() {
  70. #Create Dir
  71. Show 2 "Create Folders."
  72. ${sudo_cmd} mkdir -p ${CASA_HELPER_PATH}
  73. ${sudo_cmd} mkdir -p ${CASA_LOGS_PATH}
  74. ${sudo_cmd} mkdir -p ${CASA_USER_CONF_PATH}
  75. ${sudo_cmd} mkdir -p ${CASA_DB_PATH}
  76. ${sudo_cmd} mkdir -p ${CASA_TEMP_PATH}
  77. Show 2 "Start cleaning up the old version."
  78. ${sudo_cmd} rm -rf /usr/lib/systemd/system/casaos.service
  79. ${sudo_cmd} rm -rf /lib/systemd/system/casaos.service
  80. ${sudo_cmd} rm -rf /usr/local/bin/${CASA_BIN}
  81. #Clean
  82. if [[ -d "/casaOS" ]]; then
  83. ${sudo_cmd} rm -rf /casaOS
  84. fi
  85. Show 0 "Clearance completed."
  86. $sudo_cmd systemctl restart ${CASA_BIN}
  87. }
  88. Check_Exist