Skip to content

v0.4.1 — One-click installer + Installation guides

Choose a tag to compare

@Pokled Pokled released this 01 Mar 00:30
· 1738 commits to main since this release

⚡ One-click installer

Deploy your own Nexus node in under 10 minutes:

1. Install git (only prerequisite — not included on most VPS images)

sudo apt-get update && sudo apt-get install -y git

2. Clone and install

git clone https://github.com/Pokled/Nexus.git
cd Nexus
sudo bash install.sh
```

The script asks a few questions and handles everything automatically:

  • Installs Node.js 20, PostgreSQL, Redis, coturn, Caddy, PM2
  • Auto-detects your public IP for the TURN relay config
  • Configures the firewall (UFW)
  • Generates secure random secrets
  • Bootstraps your community and creates your admin account
  • Saves all credentials to /root/nexus-credentials.txt

Supported: Ubuntu 22.04/24.04, Debian 11/12 · Windows users → WSL guide


🌐 No domain? No problem.

The installer now makes the domain fully optional:

  Domaine de ton instance
  ┌─ Si tu as un domaine (ex: moncommunaute.fr), entre-le ci-dessous.
  └─ Sinon, appuie sur Entrée → domaine gratuit 46-225-20-193.sslip.io utilisé automatiquement.

? Domaine (Entrée pour obtenir un domaine gratuit):
  • No domain entered → auto-assigned {IP}.sslip.io domain (resolves to your VPS, Caddy obtains a Let's Encrypt certificate automatically — full HTTPS with zero config)
  • Free alias → your-community.nexusnode.app registered automatically when no domain is provided

📖 Installation guides

  • 🇬🇧 Complete English guide — VPS, WSL, home server, NAT/CGNAT, VPN/WireGuard, common errors, tips, clean uninstall
  • 🇫🇷 Guide complet en français — VPS, WSL, serveur maison, NAT/CG-NAT, VPN/WireGuard, erreurs fréquentes, astuces, désinstallation propre

🐛 Bug fixes

  • Domain now optional — if you press Enter at the domain prompt, {IP}.sslip.io is used automatically with full HTTPS support.
  • val variable leak in prompt() — without local val='', the variable persisted between prompts. Result: username and email silently inherited the value from the language prompt (e.g. fr). Fixed.
  • Directory registration — description, country, theme, version now default to empty string instead of null to satisfy NOT NULL constraints.
  • Community bootstrap — user lookup is now case-insensitive (lower(email)) so USERNAME@MAIL.FR stored as lowercase is correctly found.
  • Critical: wrong repo URL — was pointing to Nexus-Community/nexus (non-existent), causing GitHub to prompt for credentials. Fixed to Pokled/Nexus.
  • git installed first — git is now the very first package installed since most VPS images ship without it.
  • DB constraint — community_members_role now includes 'admin' (migration 015).
  • Subdomain redirect — community.nexusnode.app properly redirects to the registered instance URL (deep links preserved).

Full changelog: CHANGELOG.md