diff --git a/ct/jellyseerr.sh b/ct/jellyseerr.sh index 5f3548bf..f089d08a 100644 --- a/ct/jellyseerr.sh +++ b/ct/jellyseerr.sh @@ -55,21 +55,42 @@ function default_settings() { function update_script() { header_info if [[ ! -d /opt/jellyseerr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi -msg_info "Updating $APP" -systemctl stop jellyseerr -cd /opt/jellyseerr -output=$(git pull) -git pull &>/dev/null -if echo "$output" | grep -q "Already up to date." -then - msg_ok " $APP is already up to date." - systemctl start jellyseerr - exit +if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then + read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt + [[ ${prompt,,} =~ ^(y|yes)$ ]] || exit +fi +RELEASE=$(curl -s https://api.github.com/repos/Fallenbagel/jellyseerr/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then + msg_info "Stopping ${APP}" + systemctl stop jellyseerr + msg_ok "${APP} Stopped" + + msg_info "Setting Container to Extended Resources" + pct set $CTID -memory 4096 + msg_ok "Set Container to Extended Resources" + + msg_info "Updating ${APP} to ${RELEASE}" + cd /opt + wget -q "https://github.com/Fallenbagel/jellyseerr/archive/refs/tags/${RELEASE}.zip" + unzip -q ${RELEASE}.zip + mv jellyseerr-${RELEASE:1} /opt/jellyseerr + cd /opt/jellyseerr + pnpm install &>/dev/null + yarn build &>/dev/null + echo "${RELEASE}" >/opt/${APP}_version.txt + msg_ok "Updated ${APP}" + + msg_info "Starting ${APP}" + systemctl start jellyseerrr + msg_ok "Started ${APP}" + + msg_info "Cleaning Up" + rm -R ${RELEASE}.zip + msg_ok "Cleaned" + msg_ok "Updated Successfully" +else + msg_ok "No update required. ${APP} is already at ${RELEASE}" fi -CYPRESS_INSTALL_BINARY=0 yarn install --frozen-lockfile --network-timeout 1000000 &>/dev/null -yarn build &>/dev/null -systemctl start jellyseerr -msg_ok "Updated $APP" exit } @@ -77,6 +98,10 @@ start build_container description +msg_info "Setting Container to Normal Resources" +pct set $CTID -memory 2048 +msg_ok "Set Container to Normal Resources" + msg_ok "Completed Successfully!\n" echo -e "${APP} should be reachable by going to the following URL. ${BL}http://${IP}:5055${CL} \n" diff --git a/install/jellyseerr-install.sh b/install/jellyseerr-install.sh index 38ae8b22..3ba821b6 100644 --- a/install/jellyseerr-install.sh +++ b/install/jellyseerr-install.sh @@ -33,23 +33,28 @@ $STD apt-get update $STD apt-get install -y nodejs msg_ok "Installed Node.js" -msg_info "Installing Yarn" +msg_info "Installing Yarn/pnpm" $STD npm install -g yarn -msg_ok "Installed Yarn" +$STD npm install -g pnpm +msg_ok "Installed Yarn/pnpm" msg_info "Installing Jellyseerr (Patience)" -git clone -q https://github.com/Fallenbagel/jellyseerr.git /opt/jellyseerr +RELEASE=$(curl -s https://api.github.com/repos/Fallenbagel/jellyseerr/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') +cd /opt +wget -q "https://github.com/Fallenbagel/jellyseerr/archive/refs/tags/${RELEASE}.zip" +unzip -q ${RELEASE}.zip +mv jellyseerr-${RELEASE:1} /opt/jellyseerr +rm -R ${RELEASE}.zip cd /opt/jellyseerr -$STD git checkout main -CYPRESS_INSTALL_BINARY=0 yarn install --frozen-lockfile --network-timeout 1000000 &>/dev/null -$STD yarn install +$STD pnpm install $STD yarn build mkdir -p /etc/jellyseerr/ cat <<EOF >/etc/jellyseerr/jellyseerr.conf PORT=5055 # HOST=0.0.0.0 -# JELLYFIN_TYPE=emby +# FORCE_IPV4_FIRST=true EOF +echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" msg_ok "Installed Jellyseerr" msg_info "Creating Service" @@ -77,4 +82,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" +msg_ok "Cleaned" \ No newline at end of file