From a7c2a2de16d4ff833656da8c20e64456b25d25da Mon Sep 17 00:00:00 2001 From: Dennis Reimann Date: Wed, 9 Aug 2023 17:23:47 +0200 Subject: [PATCH] Update kindle-display The new version adds support for other display formats: The added environment vaiable `DISPLAY_THEME` allows to choose between `quote` (default), `fees`, `lightning` and `random`. --- .../config.scripts/bonus.kindle-display.sh | 45 ++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) diff --git a/home.admin/config.scripts/bonus.kindle-display.sh b/home.admin/config.scripts/bonus.kindle-display.sh index e98e535c5..f98414e03 100755 --- a/home.admin/config.scripts/bonus.kindle-display.sh +++ b/home.admin/config.scripts/bonus.kindle-display.sh @@ -10,12 +10,13 @@ CONFIG_FILE=$APP_DATA_DIR/.env APP_ROOT_DIR=$HOME_DIR/kindle-display APP_SERVER_DIR=$APP_ROOT_DIR/server CRON_FILE=$APP_SERVER_DIR/cron.sh -APP_VERSION=0.4.0 +APP_VERSION=0.5.1 # command info if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then echo "small config script to switch kindle-display on or off" echo "bonus.kindle-display.sh [on|off]" + echo "bonus.kindle-display.sh [update]" exit 1 fi @@ -172,6 +173,48 @@ PATH=/bin:/usr/bin:/usr/local/bin exit 0 fi +# update +if [ "$1" = "update" ]; then + isInstalled=$(sudo ls $HOME_DIR 2>/dev/null | grep -c kindle-display) + if [ ${isInstalled} -gt 0 ]; then + echo "*** UPDATE KINDLE-DISPLAY ***" + cd $HOME_DIR || exit 1 + + current=$(node -p "require('./kindle-display/server/package.json').version") + if [ "$current" = "$APP_VERSION" ]; then + echo "*** KINDLE-DISPLAY IS ALREADY UPDATED TO $APP_VERSION ***" + exit 0 + fi + + sudo systemctl stop kindle-display + sudo -u $USERNAME wget https://github.com/dennisreimann/kindle-display/archive/v$APP_VERSION.tar.gz + sudo -u $USERNAME tar -xzf v$APP_VERSION.tar.gz kindle-display-$APP_VERSION/server + sudo -u $USERNAME mv kindle-display{,-backup} + sudo -u $USERNAME mv kindle-display{-$APP_VERSION,} + sudo -u $USERNAME rm v$APP_VERSION.tar.gz + cd kindle-display/server + sudo -u $USERNAME npm install + if ! [ $? -eq 0 ]; then + echo "FAIL - npm install did not run correctly, aborting" + exit 1 + fi + # link config to app + sudo -u $USERNAME ln -s $CONFIG_FILE $APP_SERVER_DIR/.env + # generate initial data + echo "# run data.sh" + sudo -u $USERNAME $APP_SERVER_DIR/data.sh + cd - + sudo systemctl start kindle-display + sudo -u $USERNAME rm -rf kindle-display-backup + + echo "*** KINDLE-DISPLAY UPDATED to $APP_VERSION ***" + else + echo "*** KINDLE-DISPLAY IS NOT INSTALLED ***" + fi + + exit 0 +fi + # switch off if [ "$1" = "0" ] || [ "$1" = "off" ]; then echo "*** UNINSTALL KINDLE-DISPLAY ***"