#!/bin/sh # AM INSTALL SCRIPT VERSION TOOLPACKS EXTRAS set -u APP="puddletag" SRC="https://pkg.ajam.dev/$(uname -m)" TYPE="NixAppImage" SITE="${SRC}/${APP}.${TYPE}" # CREATE DIRECTORIES AND ADD REMOVER [ -n "${APP}" ] && mkdir -p "/opt/${APP}" "/opt/${APP}/icons" && cd "/opt/${APP}" || exit 1 printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/${APP}\nrm -R -f /opt/${APP}" > "./remove" printf '\n%s' "rm -f /usr/local/share/applications/${APP}-AM.desktop" >> "./remove" chmod a+x "./remove" || exit 1 # DOWNLOAD AND PREPARE THE APP, $version is also used for updates VERSION="$(curl -qfsSL "${SITE}.version")" wget "${SITE}" -O "./${APP}" || exit 1 echo "${VERSION}" > "./version" chmod a+x "./${APP}" || exit 1 # LINK TO PATH ln -s "/opt/${APP}/${APP}" "/usr/local/bin/${APP}" # SCRIPT TO UPDATE THE PROGRAM cat >> "./AM-updater" << 'EOF' #!/bin/sh set -u APP="puddletag" SRC="https://pkg.ajam.dev/$(uname -m)" TYPE="NixAppImage" VERSION0=$(cat "/opt/${APP}/version") VERSION="$(curl -qfsSL "${SRC}/${APP}.${TYPE}.version")" [ -n "$VERSION" ] || { echo "Error getting link"; exit 1; } if command -v appimageupdatetool >/dev/null 2>&1; then cd "/opt/$APP" || exit 1 appimageupdatetool -Or ./"${APP}" && chmod a+x ./"${APP}" && echo "${VERSION}" > ./version && exit 0 fi 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 "${SRC}/${APP}.${TYPE}" || exit 1 cd .. mv --backup=t "./tmp/${APP}.${TYPE}" "./${APP}" chmod a+x "./${APP}" || exit 1 echo "$VERSION" > "./version" rm -R -f ./*zs-old ./*.part ./tmp ./*~ notify-send "${APP} is updated!" else echo "Update not needed!" fi EOF chmod a+x "./AM-updater" || exit 1 # LAUNCHER & ICON ./"${APP}" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"${APP}".desktop ./"${APP}" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon sed -i "s#Exec=[^ ]*#Exec=${APP}#g; s#Icon=.*#Icon=/opt/${APP}/icons/${APP}#g" "./${APP}.desktop" mv "./${APP}.desktop" "/usr/local/share/applications/${APP}-AM.desktop" && mv ./DirIcon "./icons/${APP}" rm -R -f ./squashfs-root