summaryrefslogtreecommitdiff
path: root/dist/install_release.sh
diff options
context:
space:
mode:
authorTrainDoctor <traindoctor@protonmail.com>2022-10-30 16:37:19 -0700
committerGitHub <noreply@github.com>2022-10-30 16:37:19 -0700
commit5e3de747d37b4b7042485a6733b2cd8a883b16ef (patch)
tree2aec58e119ab2e34f2a4a88b4a3076db08f0e8bd /dist/install_release.sh
parentd389b403b521c48920d872c6ddd133b63ada2528 (diff)
downloaddecky-loader-5e3de747d37b4b7042485a6733b2cd8a883b16ef.tar.gz
decky-loader-5e3de747d37b4b7042485a6733b2cd8a883b16ef.zip
Systemd service updating (#240)v2.3.1-pre2
* Add services and updated installer files * Loader updates service file during update! * Testing update branch doesn't exist lol * Update to dfl 3.7.12 * Fix services and add working service updater * Revert services but replace their aliases * Fix install scripts as well * Move leftover service files to .systemd dir * No wonder it's not trimming the file... * fix whitespace * Remove unused imports * Remove another un-used import Co-authored-by: AAGaming <aa@mail.catvibers.me>
Diffstat (limited to 'dist/install_release.sh')
-rw-r--r--dist/install_release.sh23
1 files changed, 21 insertions, 2 deletions
diff --git a/dist/install_release.sh b/dist/install_release.sh
index f4f1f91d..f27aaf2c 100644
--- a/dist/install_release.sh
+++ b/dist/install_release.sh
@@ -26,8 +26,10 @@ systemctl --user disable plugin_loader 2> /dev/null
systemctl stop plugin_loader 2> /dev/null
systemctl disable plugin_loader 2> /dev/null
-rm -f "/etc/systemd/system/plugin_loader.service"
-cat > "/etc/systemd/system/plugin_loader.service" <<- EOM
+
+curl -L https://raw.githubusercontent.com/SteamDeckHomebrew/decky-loader/service-updater/dist/plugin_loader-release.service --output ${HOMEBREW_FOLDER}/services/plugin_loader-release.service
+
+cat > "${HOMEBREW_FOLDER}/services/plugin_loader-backup.service" <<- EOM
[Unit]
Description=SteamDeck Plugin Loader
After=network-online.target
@@ -39,9 +41,26 @@ Restart=always
ExecStart=${HOMEBREW_FOLDER}/services/PluginLoader
WorkingDirectory=${HOMEBREW_FOLDER}/services
Environment=PLUGIN_PATH=${HOMEBREW_FOLDER}/plugins
+Environment=LOG_LEVEL=INFO
[Install]
WantedBy=multi-user.target
EOM
+
+if [[ -f "${HOMEBREW_FOLDER}/services/plugin_loader-release.service" ]]; then
+ printf "Grabbed latest release service.\n"
+ sed -i -e "s|\${HOMEBREW_FOLDER}|${HOMEBREW_FOLDER}|" "${HOMEBREW_FOLDER}/services/plugin_loader-release.service"
+ cp -f "${HOMEBREW_FOLDER}/services/plugin_loader-release.service" "/etc/systemd/system/plugin_loader.service"
+else
+ printf "Could not curl latest release systemd service, using built-in service as a backup!\n"
+ rm -f "/etc/systemd/system/plugin_loader.service"
+ cp "${HOMEBREW_FOLDER}/services/plugin_loader-backup.service" "/etc/systemd/system/plugin_loader.service"
+fi
+
+mkdir -p ${HOMEBREW_FOLDER}/services/.systemd
+cp ${HOMEBREW_FOLDER}/services/plugin_loader-release.service ${HOMEBREW_FOLDER}/services/.systemd/plugin_loader-release.service
+cp ${HOMEBREW_FOLDER}/services/plugin_loader-backup.service ${HOMEBREW_FOLDER}/services/.systemd/plugin_loader-backup.service
+rm ${HOMEBREW_FOLDER}/services/plugin_loader-backup.service ${HOMEBREW_FOLDER}/services/plugin_loader-release.service
+
systemctl daemon-reload
systemctl start plugin_loader
systemctl enable plugin_loader