11#! /usr/bin/env bash
22source <( curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
3+
34# Copyright (c) 2021-2025 tteck
45# Author: tteck (tteckster)
56# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
@@ -26,51 +27,58 @@ function update_script() {
2627
2728 if [[ ! -d /opt/actualbudget ]]; then
2829 msg_error " No ${APP} Installation Found!"
29- exit
30+ exit 1
3031 fi
31-
32- RELEASE=$( curl -s https://api.github.com/repos/actualbudget/actual/releases/latest | grep " tag_name" | awk ' {print substr($2, 3, length($2)-4) }' )
32+
33+ RELEASE=$( curl -s https://api.github.com/repos/actualbudget/actual/releases/latest | \
34+ grep " tag_name" | awk -F ' "' ' {print substr($4, 2)}' )
35+
3336 if [[ ! -f /opt/actualbudget_version.txt ]] || [[ " ${RELEASE} " != " $( cat /opt/actualbudget_version.txt) " ]]; then
3437 msg_info " Stopping ${APP} "
3538 systemctl stop actualbudget
3639 msg_ok " ${APP} Stopped"
37-
40+
3841 msg_info " Updating ${APP} to ${RELEASE} "
3942 cd /tmp
40- wget -q https://github.com/actualbudget/actual-server/archive/refs/tags/v${RELEASE} .tar.gz
43+ wget -q " https://github.com/actualbudget/actual-server/archive/refs/tags/v${RELEASE} .tar.gz"
44+
4145 mv /opt/actualbudget /opt/actualbudget_bak
42- tar -xzf v${RELEASE} .tar.gz > /dev/null 2>&1
46+ tar -xzf " v${RELEASE} .tar.gz" > /dev/null 2>&1
4347 mv * ctual-server-* /opt/actualbudget
48+
49+ # Sicherstellen, dass .env existiert
4450 rm -rf /opt/actualbudget/.env
45- if [ ! -f /opt/actualbudget_bak/.env ]; then
46- cat << EOF > /opt/actualbudget/.env
47- ACTUAL_UPLOAD_DIR=/opt/actualbudget/server-files
48- ACTUAL_DATA_DIR=/opt/actualbudget-data
49- ACTUAL_SERVER_FILES_DIR=/opt/actualbudget/server-files
50- PORT=5006
51- EOF
51+ if [[ ! -f /opt/actualbudget_bak/.env ] ]; then
52+ cat << EOF > /opt/actualbudget/.env
53+ ACTUAL_UPLOAD_DIR=/opt/actualbudget/server-files
54+ ACTUAL_DATA_DIR=/opt/actualbudget-data
55+ ACTUAL_SERVER_FILES_DIR=/opt/actualbudget/server-files
56+ PORT=5006
57+ EOF
5258 fi
59+
5360 mv /opt/actualbudget_bak/.env /opt/actualbudget
5461 mv /opt/actualbudget_bak/.migrate /opt/actualbudget
5562 mv /opt/actualbudget_bak/server-files /opt/actualbudget/server-files
63+
5664 cd /opt/actualbudget
5765 yarn install & > /dev/null
58- echo "${RELEASE} " >/opt/actualbudget_version.txt
66+ echo " ${RELEASE} " > /opt/actualbudget_version.txt
5967 msg_ok " Updated ${APP} "
60-
68+
6169 msg_info " Starting ${APP} "
6270 systemctl start actualbudget
6371 msg_ok " Started ${APP} "
64-
72+
6573 msg_info " Cleaning Up"
6674 rm -rf /opt/actualbudget_bak
67- rm -rf /tmp/v${RELEASE} .tar.gz
75+ rm -rf " /tmp/v${RELEASE} .tar.gz"
6876 msg_ok " Cleaned"
6977 msg_ok " Updated Successfully"
7078 else
7179 msg_ok " No update required. ${APP} is already at ${RELEASE} "
7280 fi
73- exit
81+ exit 0
7482}
7583
7684start
0 commit comments