From 932079a9f6a69f747ac0ac1363bd13b6860c95c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Slavi=C5=A1a=20Are=C5=BEina?= <58952836+tremor021@users.noreply.github.com> Date: Sun, 11 Jan 2026 14:14:19 +0100 Subject: [PATCH] Refactor: Homer (#10698) * Refactor * Update --- ct/homer.sh | 49 ++++++++++++++++++---------------------- install/homer-install.sh | 19 +++++----------- 2 files changed, 28 insertions(+), 40 deletions(-) diff --git a/ct/homer.sh b/ct/homer.sh index ab41245bc..a27617a8d 100644 --- a/ct/homer.sh +++ b/ct/homer.sh @@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}" var_ram="${var_ram:-512}" var_disk="${var_disk:-2}" var_os="${var_os:-debian}" -var_version="${var_version:-12}" +var_version="${var_version:-13}" var_unprivileged="${var_unprivileged:-1}" header_info "$APP" @@ -27,36 +27,31 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - msg_info "Stopping Service" - systemctl stop homer - msg_ok "Stopped Service" - msg_info "Backing up assets directory" - cd ~ - mkdir -p assets-backup - cp -R /opt/homer/assets/. assets-backup - msg_ok "Backed up assets directory" + if check_for_gh_release "homer" "bastienwirtz/homer"; then + msg_info "Stopping Service" + systemctl stop homer + msg_ok "Stopped Service" - msg_info "Updating ${APP}" - rm -rf /opt/homer/* - cd /opt/homer - curl -fsSL "https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip" -o $(basename "https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip") - $STD unzip homer.zip - msg_ok "Updated ${APP}" + msg_info "Backing up assets directory" + cd ~ + mkdir -p assets-backup + cp -R /opt/homer/assets/. assets-backup + msg_ok "Backed up assets directory" - msg_info "Restoring assets directory" - cd ~ - cp -Rf assets-backup/. /opt/homer/assets/ - msg_ok "Restored assets directory" + CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homer" "bastienwirtz/homer" "prebuild" "latest" "/opt/homer" "homer.zip" - msg_info "Cleaning" - rm -rf assets-backup /opt/homer/homer.zip - msg_ok "Cleaned" - - msg_info "Starting Service" - systemctl start homer - msg_ok "Started Service" - msg_ok "Updated successfully!" + msg_info "Restoring assets directory" + cd ~ + cp -Rf assets-backup/. /opt/homer/assets/ + rm -rf assets-backup + msg_ok "Restored assets directory" + + msg_info "Starting Service" + systemctl start homer + msg_ok "Started Service" + msg_ok "Updated successfully!" + fi exit } diff --git a/install/homer-install.sh b/install/homer-install.sh index 42f6dd601..e2c45433c 100644 --- a/install/homer-install.sh +++ b/install/homer-install.sh @@ -13,32 +13,25 @@ setting_up_container network_check update_os -msg_info "Installing Dependencies" -$STD apt-get install -y pip -msg_ok "Installed Dependencies" - -msg_info "Installing Homer" -mkdir -p /opt/homer -cd /opt/homer -curl -fsSL "https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip" -o "homer.zip" -$STD unzip homer.zip -rm -rf homer.zip -cp assets/config.yml.dist assets/config.yml -msg_ok "Installed Homer" +fetch_and_deploy_gh_release "homer" "bastienwirtz/homer" "prebuild" "latest" "/opt/homer" "homer.zip" +cp /opt/homer/assets/config.yml.dist /opt/homer/assets/config.yml msg_info "Creating Service" cat </etc/systemd/system/homer.service [Unit] Description=Homer Dashboard After=network-online.target +Wants=network-online.target + [Service] Type=simple WorkingDirectory=/opt/homer ExecStart=python3 -m http.server 8010 + [Install] WantedBy=multi-user.target EOF -$STD systemctl enable --now homer +systemctl enable -q --now homer msg_ok "Created Service" motd_ssh