Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 11 additions & 6 deletions ct/paperless-ngx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,7 @@ function update_script() {
fi
fi

RELEASE="v2.20.15"
if check_for_gh_release "paperless" "paperless-ngx/paperless-ngx" "${RELEASE}" "v3 needs further testing"; then
if check_for_gh_release "paperless" "paperless-ngx/paperless-ngx"; then
msg_info "Stopping all Paperless-ngx Services"
systemctl stop paperless-consumer paperless-webserver paperless-scheduler paperless-task-queue
msg_ok "Stopped all Paperless-ngx Services"
Expand All @@ -64,7 +63,7 @@ function update_script() {
msg_ok "Backup completed to $BACKUP_DIR"

PYTHON_VERSION="3.13" setup_uv
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "${RELEASE}" "/opt/paperless" "paperless*tar.xz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "v3.0.0-beta.rc1" "/opt/paperless" "paperless*tar.xz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jbig2enc" "ie13/jbig2enc" "tarball" "latest" "/opt/jbig2enc"

. /etc/os-release
Expand All @@ -76,12 +75,17 @@ function update_script() {

msg_info "Updating Paperless-ngx"
cp -r "$BACKUP_DIR"/* /opt/paperless/
grep -q '^PAPERLESS_DBENGINE=' /opt/paperless/paperless.conf || echo 'PAPERLESS_DBENGINE=postgresql' >>/opt/paperless/paperless.conf
cd /opt/paperless
$STD uv sync --all-extras
cd /opt/paperless/src
$STD uv run -- python manage.py migrate
msg_ok "Updated Paperless-ngx"

# zxing-cpp replaces pyzbar in v3, libzbar is no longer required
$STD apt-get -y purge libzbar0t64 libzbar0 2>/dev/null || true
$STD apt-get -y autoremove 2>/dev/null || true

rm -rf "$BACKUP_DIR"

else
Expand Down Expand Up @@ -139,7 +143,7 @@ function update_script() {
msg_ok "Backup completed to $BACKUP_DIR"

PYTHON_VERSION="3.13" setup_uv
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "${RELEASE}" "/opt/paperless" "paperless*tar.xz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "v2.20.15" "/opt/paperless" "paperless*tar.xz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jbig2enc" "ie13/jbig2enc" "tarball" "latest" "/opt/jbig2enc"

. /etc/os-release
Expand All @@ -151,13 +155,14 @@ function update_script() {
msg_ok "Installed Ghostscript"
fi

msg_info "Updating Paperless-ngx"
msg_info "Updating Paperless-ngx to v2.20.15"
cp -r "$BACKUP_DIR"/* /opt/paperless/
cd /opt/paperless
$STD uv sync --all-extras
cd /opt/paperless/src
$STD uv run -- python manage.py migrate
msg_ok "Paperless-ngx migration and update completed"
msg_ok "Migrated to uv and updated to v2.20.15 (required before v3)"
msg_custom "ℹ️" "Run the update again to complete the upgrade to the latest version (v3)."

rm -rf "$BACKUP_DIR"
if [[ -d /opt/paperless/backup ]]; then
Expand Down
7 changes: 3 additions & 4 deletions install/paperless-ngx-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ $STD apt install -y \
optipng \
libpq-dev \
libmagic-dev \
libzbar0t64 \
poppler-utils \
default-libmysqlclient-dev \
automake \
Expand All @@ -46,7 +45,7 @@ msg_ok "Installed Dependencies"
PG_VERSION="16" setup_postgresql
PG_DB_NAME="paperlessdb" PG_DB_USER="paperless" setup_postgresql_db
PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "v2.20.15" "/opt/paperless" "paperless*tar.xz"
fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "v3.0.0-beta.rc1" "/opt/paperless" "paperless*tar.xz"

msg_info "Setup Paperless-ngx"
cd /opt/paperless
Expand All @@ -69,12 +68,12 @@ sed -i \
-e "s|#PAPERLESS_MEDIA_ROOT=../media|PAPERLESS_MEDIA_ROOT=/opt/paperless_data/media|" \
-e "s|#PAPERLESS_EMPTY_TRASH_DIR=|PAPERLESS_EMPTY_TRASH_DIR=/opt/paperless_data/trash|" \
-e "s|#PAPERLESS_STATICDIR=../static|PAPERLESS_STATICDIR=/opt/paperless/static|" \
-e 's|#PAPERLESS_DBHOST=localhost|PAPERLESS_DBHOST=localhost|' \
-e 's|#PAPERLESS_DBHOST=localhost|PAPERLESS_DBENGINE=postgresql\nPAPERLESS_DBHOST=localhost|' \
-e 's|#PAPERLESS_DBPORT=5432|PAPERLESS_DBPORT=5432|' \
-e "s|#PAPERLESS_DBNAME=paperless|PAPERLESS_DBNAME=$PG_DB_NAME|" \
-e "s|#PAPERLESS_DBUSER=paperless|PAPERLESS_DBUSER=$PG_DB_USER|" \
-e "s|#PAPERLESS_DBPASS=paperless|PAPERLESS_DBPASS=$PG_DB_PASS|" \
-e "s|#PAPERLESS_SECRET_KEY=change-me|PAPERLESS_SECRET_KEY=$SECRET_KEY|" \
-e "s|^#\?PAPERLESS_SECRET_KEY=.*|PAPERLESS_SECRET_KEY=$SECRET_KEY|" \
/opt/paperless/paperless.conf
cd /opt/paperless/src
set -a
Expand Down
Loading