From f07c221ca4c3176b3b3d15177d14ef1f56b42050 Mon Sep 17 00:00:00 2001 From: "CanbiZ (MickLesk)" <47820557+MickLesk@users.noreply.github.com> Date: Mon, 9 Feb 2026 10:33:44 +0100 Subject: [PATCH] NginxProxymanager: use better-sqlite3 (#11708) * fix(nginxproxymanager): update for better-sqlite3 and setup wizard NPM switched to better-sqlite3 as the knex database client. The old sqlite3 client causes 'Internal Error' on user creation. - Update production.json in install/update to use better-sqlite3 - Add sed patch in update script to fix existing production.json - Add useNullAsDefault: true to match upstream knex config - Remove default credentials from JSON (NPM now uses setup wizard) - Add note about setup wizard for first-time users Ref: NginxProxyManager/nginx-proxy-manager@0b2fa82 Closes #11681 * Update nginxproxymanager.json * Remove disabled script error messages Removed error messages related to OpenResty APT repository issues. --- ct/nginxproxymanager.sh | 12 ++++-------- frontend/public/json/nginxproxymanager.json | 8 ++++++-- install/nginxproxymanager-install.sh | 5 +++-- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/ct/nginxproxymanager.sh b/ct/nginxproxymanager.sh index 8abb75738..ab931a591 100644 --- a/ct/nginxproxymanager.sh +++ b/ct/nginxproxymanager.sh @@ -28,12 +28,6 @@ function update_script() { exit fi - msg_error "This script is currently disabled due to an external issue with the OpenResty APT repository." - msg_error "The repository's GPG key uses SHA-1 signatures, which are no longer accepted by Debian as of February 1, 2026." - msg_error "The issue is tracked in openresty/openresty#1097" - msg_error "For more details, see: https://github.com/community-scripts/ProxmoxVE/issues/11406" - exit 1 - if [[ $(grep -E '^VERSION_ID=' /etc/os-release) == *"12"* ]]; then msg_error "Wrong Debian version detected!" msg_error "Please create a snapshot first. You must upgrade your LXC to Debian Trixie before updating. Visit: https://github.com/community-scripts/ProxmoxVE/discussions/7489" @@ -145,15 +139,17 @@ function update_script() { "database": { "engine": "knex-native", "knex": { - "client": "sqlite3", + "client": "better-sqlite3", "connection": { "filename": "/data/database.sqlite" - } + }, + "useNullAsDefault": true } } } EOF fi + sed -i 's/"client": "sqlite3"/"client": "better-sqlite3"/' /app/config/production.json cd /app $STD yarn install --network-timeout 600000 msg_ok "Initialized Backend" diff --git a/frontend/public/json/nginxproxymanager.json b/frontend/public/json/nginxproxymanager.json index 4bf328876..fec1d27c6 100644 --- a/frontend/public/json/nginxproxymanager.json +++ b/frontend/public/json/nginxproxymanager.json @@ -30,10 +30,14 @@ } ], "default_credentials": { - "username": "admin@example.com", - "password": "changeme" + "username": null, + "password": null }, "notes": [ + { + "text": "On first launch, a setup wizard will guide you through creating an admin account. There are no default credentials.", + "type": "info" + }, { "text": "You can install the specific one certbot you prefer, or you can Running /app/scripts/install-certbot-plugins within the Nginx Proxy Manager (NPM) LXC shell will install many common plugins. Important: This script does not install all Certbot plugins, as some require additional, external system dependencies (like specific packages for certain DNS providers). These external dependencies must be manually installed within the LXC container before you can successfully install and use the corresponding Certbot plugin. Consult the plugin's documentation for required packages.", "type": "info" diff --git a/install/nginxproxymanager-install.sh b/install/nginxproxymanager-install.sh index 01de825c2..c1914e857 100644 --- a/install/nginxproxymanager-install.sh +++ b/install/nginxproxymanager-install.sh @@ -130,10 +130,11 @@ if [ ! -f /app/config/production.json ]; then "database": { "engine": "knex-native", "knex": { - "client": "sqlite3", + "client": "better-sqlite3", "connection": { "filename": "/data/database.sqlite" - } + }, + "useNullAsDefault": true } } }