diff --git a/frontend/public/json/documenso.json b/frontend/public/json/documenso.json new file mode 100644 index 000000000..535db2dd5 --- /dev/null +++ b/frontend/public/json/documenso.json @@ -0,0 +1,35 @@ +{ + "name": "Documenso", + "slug": "documenso", + "categories": [ + 12 + ], + "date_created": "2025-04-28", + "type": "ct", + "updateable": true, + "privileged": false, + "interface_port": 3000, + "documentation": "https://documenso.com/", + "website": "https://documenso.com/", + "logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/documenso.svg", + "config_path": "/opt/documenso/.env", + "description": "Signing documents digitally should be fast and easy and should be the best practice for every document signed worldwide. This is technically quite easy today, but it also introduces a new party to every signature: The signing tool providers. While this is not a problem in itself, it should make us think about how we want these providers of trust to work. Documenso aims to be the world's most trusted document-signing tool. This trust is built by empowering you to self-host Documenso and review how it works under the hood.", + "install_methods": [ + { + "type": "default", + "script": "ct/documenso.sh", + "resources": { + "cpu": 4, + "ram": 6144, + "hdd": 10, + "os": "Debian", + "version": "12" + } + } + ], + "default_credentials": { + "username": "helper-scripts@local.com", + "password": "helper-scripts" + }, + "notes": [] +} diff --git a/install/documenso-install.sh b/install/documenso-install.sh index 37d658fcb..f2013396a 100644 --- a/install/documenso-install.sh +++ b/install/documenso-install.sh @@ -20,27 +20,16 @@ msg_ok "Setup Functions" msg_info "Installing Dependencies" $STD apt-get install -y \ - gpg \ libc6 \ make \ cmake \ jq \ - postgresql \ python3 \ python3-bcrypt msg_ok "Installed Dependencies" -msg_info "Setting up Node.js Repository" -mkdir -p /etc/apt/keyrings -curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg -echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list -msg_ok "Set up Node.js Repository" - -msg_info "Installing Node.js" -$STD apt-get update -$STD apt-get install -y nodejs -$STD npm install -g turbo@1.9.3 -msg_ok "Installed Node.js" +NODE_VERSION="22" NODE_MODULE="turbo@1.9.3" install_node_and_modules +PG_VERSION="16" install_postgresql msg_info "Setting up PostgreSQL" DB_NAME="documenso_db" @@ -90,7 +79,7 @@ msg_ok "Installed Documenso" msg_info "Create User" PASSWORD_HASH=$(python3 -c "import bcrypt; print(bcrypt.hashpw(b'helper-scripts', bcrypt.gensalt(rounds=12)).decode())") -sudo -u postgres psql -d documenso_db -c "INSERT INTO \"User\" (name, email, \"emailVerified\", password, \"identityProvider\", roles, \"createdAt\", \"lastSignedIn\", \"updatedAt\", \"customerId\") VALUES ('helper-scripts', 'helper-scripts@local.com', '2025-01-20 17:14:45.058', '$PASSWORD_HASH', 'DOCUMENSO', ARRAY['USER', 'ADMIN']::\"Role\"[], '2025-01-20 16:04:05.543', '2025-01-20 16:14:55.249', '2025-01-20 16:14:55.25', NULL) RETURNING id;" +$STD sudo -u postgres psql -d documenso_db -c "INSERT INTO \"User\" (name, email, \"emailVerified\", password, \"identityProvider\", roles, \"createdAt\", \"lastSignedIn\", \"updatedAt\", \"customerId\") VALUES ('helper-scripts', 'helper-scripts@local.com', '2025-01-20 17:14:45.058', '$PASSWORD_HASH', 'DOCUMENSO', ARRAY['USER', 'ADMIN']::\"Role\"[], '2025-01-20 16:04:05.543', '2025-01-20 16:14:55.249', '2025-01-20 16:14:55.25', NULL) RETURNING id;" $STD npm run prisma:migrate-deploy msg_ok "User created" diff --git a/misc/tools.func b/misc/tools.func index 3caaf19d3..cf80f691c 100644 --- a/misc/tools.func +++ b/misc/tools.func @@ -689,8 +689,8 @@ setup_local_ip_helper() { # Install networkd-dispatcher if not present if ! dpkg -s networkd-dispatcher >/dev/null 2>&1; then - apt-get update -qq - apt-get install -yq networkd-dispatcher + $STD apt-get update -qq + $STD apt-get install -yq networkd-dispatcher fi # Write update_local_ip.sh @@ -746,7 +746,7 @@ $SCRIPT_PATH EOF chmod +x "$DISPATCHER_SCRIPT" - systemctl enable --now networkd-dispatcher.service + systemctl enable -q --now networkd-dispatcher.service $STD msg_ok "LOCAL_IP helper installed using networkd-dispatcher" }