From 0479b379829e8c7f60532a0db62610eed8c9291e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 3 Apr 2026 19:45:32 +0000 Subject: [PATCH 1/2] Initial plan From 125e6bef76451c81ca3f7fd4b3450efe346d91c2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 3 Apr 2026 19:49:15 +0000 Subject: [PATCH 2/2] Fix onboarding wizard: centering, njal.la domain instructions, port forwarding guidance Agent-Logs-Url: https://github.com/naturallaw777/staging_alpha/sessions/a264d893-5e77-4b7b-98d5-23796530fe97 Co-authored-by: naturallaw777 <99053422+naturallaw777@users.noreply.github.com> --- app/sovran_systemsos_web/static/onboarding.js | 54 ++++++++++++++----- app/sovran_systemsos_web/static/style.css | 6 ++- .../templates/onboarding.html | 9 ++-- 3 files changed, 50 insertions(+), 19 deletions(-) diff --git a/app/sovran_systemsos_web/static/onboarding.js b/app/sovran_systemsos_web/static/onboarding.js index 84ccc35..da9e7fa 100644 --- a/app/sovran_systemsos_web/static/onboarding.js +++ b/app/sovran_systemsos_web/static/onboarding.js @@ -8,13 +8,13 @@ const TOTAL_STEPS = 6; // Domains that may need configuration, with service unit mapping for enabled check const DOMAIN_DEFS = [ - { name: "matrix", label: "Matrix (Synapse)", unit: "matrix-synapse.service", needsDdns: false }, - { name: "haven", label: "Haven Nostr Relay", unit: "haven-relay.service", needsDdns: true }, - { name: "element-calling", label: "Element Video/Audio Calling", unit: "livekit.service", needsDdns: true }, - { name: "vaultwarden", label: "Vaultwarden (Password Vault)", unit: "vaultwarden.service", needsDdns: false }, - { name: "btcpayserver", label: "BTCPay Server", unit: "btcpayserver.service", needsDdns: false }, - { name: "nextcloud", label: "Nextcloud", unit: "phpfpm-nextcloud.service",needsDdns: false }, - { name: "wordpress", label: "WordPress", unit: "phpfpm-wordpress.service",needsDdns: false }, + { name: "matrix", label: "Matrix (Synapse)", unit: "matrix-synapse.service", needsDdns: true }, + { name: "haven", label: "Haven Nostr Relay", unit: "haven-relay.service", needsDdns: true }, + { name: "element-calling", label: "Element Video/Audio Calling", unit: "livekit.service", needsDdns: true }, + { name: "vaultwarden", label: "Vaultwarden (Password Vault)", unit: "vaultwarden.service", needsDdns: true }, + { name: "btcpayserver", label: "BTCPay Server", unit: "btcpayserver.service", needsDdns: true }, + { name: "nextcloud", label: "Nextcloud", unit: "phpfpm-nextcloud.service", needsDdns: true }, + { name: "wordpress", label: "WordPress", unit: "phpfpm-wordpress.service", needsDdns: true }, ]; const REBUILD_POLL_INTERVAL = 2000; @@ -137,16 +137,25 @@ async function loadStep2() { if (relevantDomains.length === 0) { html += '
No domain-based services are enabled for your role. You can skip this step.
'; } else { - html += 'Enter a fully-qualified domain name (e.g. matrix.example.com) for each service.
curl "https://njal.la/update/?h=sub.domain.com&k=abc123&auto"Enter each fully-qualified subdomain (e.g. matrix.yourdomain.com) and its Njal.la DDNS curl command.
ℹ Paste the curl URL from your Njal.la dashboard\'s Dynamic record
'; html += 'http://192.168.1.1 or http://192.168.0.1- Enter the domain names for your services. If you're using dynamic DNS, - also provide your DDNS update URL. + Sovran_SystemsOS uses Njal.la for domains and Dynamic DNS. + For each service, enter the subdomain you purchased on Njal.la and paste the DDNS curl command from your Njal.la dashboard.
- Your router must forward these ports to this machine. Configure port - forwarding in your router's admin panel pointing to the internal IP shown below. + Your home router must forward specific ports to this machine before your services will work. + Ports 80 and 443 must be open before Caddy can authenticate your SSL certificates. + Without these ports forwarded, HTTPS will not work and your services will be unreachable from outside your network.