#!/bin/sh # AM INSTALL SCRIPT VERSION 3.5 set -u APP=ymir SITE="StrikerX3/Ymir" # CREATE DIRECTORIES AND ADD REMOVER [ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 printf "#!/bin/sh\nset -e\n" > ../remove printf "rm -f /usr/local/bin/$APP\n" >> ../remove printf "rm -R -f /opt/$APP\n" >> ../remove printf "rm -f /usr/local/share/applications/$APP-AM.desktop /usr/share/applications/$APP-AM.desktop\n" >> ../remove chmod a+x ../remove || exit 1 # DOWNLOAD AND PREPARE THE APP version=$(curl -s https://api.github.com/repos/StrikerX3/Ymir/releases | grep -oP '"browser_download_url":\s*"\K[^"]*releases/download/v[^"]*ymir-linux-x86_64-AVX2[^"]*\.tar\.xz' | grep -v "nightly" | head -1) wget "$version" || exit 1 [ -e ./*tar.xz ] && tar -xJf ./*.tar.xz && rm -f ./*.tar.xz cd .. mv ./tmp/ymir-sdl3 ./ymir [ -f ./tmp/gamecontroller.txt ] && mv ./tmp/gamecontroller.txt ./gamecontroller.txt rm -R -f ./tmp || exit 1 echo "$version" > ./version chmod a+x ./ymir || exit 1 # LINK TO PATH ln -s "/opt/$APP/ymir" "/usr/local/bin/ymir" # DOWNLOAD DESKTOP FILE AND ICON FROM GITHUB mkdir -p /opt/$APP/icons wget -q -O /opt/$APP/icons/ymir.png https://raw.githubusercontent.com/StrikerX3/Ymir/main/apps/ymir-sdl3/res/ymir.png wget -q -O /usr/local/share/applications/ymir-AM.desktop https://raw.githubusercontent.com/StrikerX3/Ymir/main/apps/ymir-sdl3/res/io.github.strikerx3.ymir.desktop # FIX PATHS AND NAME IN DESKTOP FILE sed -i 's|^Exec=.*|Exec=ymir|; s|^Icon=.*|Icon=/opt/ymir/icons/ymir|' /usr/local/share/applications/ymir-AM.desktop # SCRIPT TO UPDATE THE PROGRAM cat >> ./AM-updater << 'EOF' #!/bin/sh set -u APP=ymir SITE="StrikerX3/Ymir" version0=$(cat "/opt/$APP/version") version=$(curl -s https://api.github.com/repos/StrikerX3/Ymir/releases | grep -oP '"browser_download_url":\s*"\K[^"]*releases/download/v[^"]*ymir-linux-x86_64-AVX2[^"]*\.tar\.xz' | grep -v "nightly" | head -1) [ -n "$version" ] || { echo "Error getting link"; exit 1; } if [ "$version" != "$version0" ]; then mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 notify-send "A new version of $APP is available, please wait" wget "$version" || exit 1 [ -e ./*tar.xz ] && tar -xJf ./*.tar.xz && rm -f ./*.tar.xz cd .. mv --backup=t ./tmp/ymir-sdl3 ./ymir [ -f ./tmp/gamecontroller.txt ] && mv ./tmp/gamecontroller.txt ./gamecontroller.txt chmod a+x ./ymir || exit 1 echo "$version" > ./version rm -R -f ./tmp ./*~ notify-send "$APP updated!" else echo "Update not needed!" fi EOF chmod a+x ./AM-updater || exit 1