zramen
1 #!/bin/sh 2 3 # AM INSTALL SCRIPT VERSION 3. 4 5 set -u 6 APP=zramen 7 SITE="atweiden/zramen" 8 9 # CREATE DIRECTORIES AND ADD REMOVER 10 [ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 11 printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > "/opt/$APP/remove" 12 #printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> "/opt/$APP/remove" 13 chmod a+x "/opt/$APP/remove" 14 15 # DOWNLOAD AND PREPARE THE APP 16 # $version is also used for updates 17 18 19 version=$(curl -Ls https://api.github.com/repos/"$SITE"/releases | sed 's/[()",{}]/ /g; s/ /\n/g' | grep -o 'https.*zramen.*tar.gz$' | head -1) 20 wget "$version" && echo "$version" > "/opt/$APP/version" || exit 1 21 tar fx ./*tar* || exit 1 22 cd .. 23 mv --backup=t ./tmp/*/* ./ && rm -R -f ./tmp || exit 1 24 chmod a+x "/opt/$APP/$APP" || exit 1 25 26 # LINK TO PATH 27 ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" 28 29 # SCRIPT TO UPDATE THE PROGRAM 30 cat >> "/opt/$APP/AM-updater" << 'EOF' 31 #!/bin/sh 32 set -u 33 APP=zramen 34 SITE="atweiden/zramen" 35 version0=$(cat /opt/$APP/version) 36 version=$(curl -Ls https://api.github.com/repos/"$SITE"/releases | sed 's/[()",{}]/ /g; s/ /\n/g' | grep -o 'https.*zramen.*tar.gz$' | head -1) 37 [ -n "$version" ] || { echo "Error getting link"; exit 1; } 38 if [ "$version" != "$version0" ]; then 39 notify-send "A new version of $APP is available, please wait" 40 mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 41 wget "$version" || exit 1 42 tar fx ./*tar* || exit 1 43 cd .. 44 mv --backup=t ./tmp/*/* ./ && rm -R -f ./tmp || exit 1 45 echo "$version" > ./version 46 rm -R -f ./tmp ./*~ 47 chmod a+x "/opt/$APP/$APP" || exit 1 48 notify-send "$APP is updated!" 49 exit 0 50 fi 51 echo "Update not needed!" 52 EOF 53 chmod a+x "/opt/$APP/AM-updater" || exit 1