summaryrefslogtreecommitdiff
path: root/dist/install_prerelease.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_prerelease.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_prerelease.sh')
-rw-r--r--dist/install_prerelease.sh26
1 files changed, 22 insertions, 4 deletions
diff --git a/dist/install_prerelease.sh b/dist/install_prerelease.sh
index 8b9be30e..fedc3eaf 100644
--- a/dist/install_prerelease.sh
+++ b/dist/install_prerelease.sh
@@ -7,8 +7,8 @@ echo "Installing Steam Deck Plugin Loader pre-release..."
USER_DIR="$(getent passwd $SUDO_USER | cut -d: -f6)"
HOMEBREW_FOLDER="${USER_DIR}/homebrew"
-# # Create folder structure
-rm -rf ${HOMEBREW_FOLDER}/services
+# Create folder structure
+rm -rf "${HOMEBREW_FOLDER}/services"
sudo -u $SUDO_USER mkdir -p "${HOMEBREW_FOLDER}/services"
sudo -u $SUDO_USER mkdir -p "${HOMEBREW_FOLDER}/plugins"
@@ -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-prerelease.service --output ${HOMEBREW_FOLDER}/services/plugin_loader-prerelease.service
+
+cat > "${HOMEBREW_FOLDER}/services/plugin_loader-backup.service" <<- EOM
[Unit]
Description=SteamDeck Plugin Loader
After=network-online.target
@@ -43,6 +45,22 @@ Environment=LOG_LEVEL=DEBUG
[Install]
WantedBy=multi-user.target
EOM
+
+if [[ -f "${HOMEBREW_FOLDER}/services/plugin_loader-prerelease.service" ]]; then
+ printf "Grabbed latest prerelease service.\n"
+ sed -i -e "s|\${HOMEBREW_FOLDER}|${HOMEBREW_FOLDER}|" "${HOMEBREW_FOLDER}/services/plugin_loader-prerelease.service"
+ cp -f "${HOMEBREW_FOLDER}/services/plugin_loader-prerelease.service" "/etc/systemd/system/plugin_loader.service"
+else
+ printf "Could not curl latest prerelease 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-prerelease.service ${HOMEBREW_FOLDER}/services/.systemd/plugin_loader-prerelease.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-prerelease.service
+
systemctl daemon-reload
systemctl start plugin_loader
systemctl enable plugin_loader