Repository navigation
v0.4.1 — One-click installer + Installation guides
⚡ 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.iodomain (resolves to your VPS, Caddy obtains a Let's Encrypt certificate automatically — full HTTPS with zero config) - Free alias →
your-community.nexusnode.appregistered 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.iois used automatically with full HTTPS support. valvariable leak inprompt()— withoutlocal 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,versionnow default to empty string instead ofnullto satisfy NOT NULL constraints. - Community bootstrap — user lookup is now case-insensitive (
lower(email)) soUSERNAME@MAIL.FRstored as lowercase is correctly found. - Critical: wrong repo URL — was pointing to
Nexus-Community/nexus(non-existent), causing GitHub to prompt for credentials. Fixed toPokled/Nexus. - git installed first —
gitis now the very first package installed since most VPS images ship without it. - DB constraint —
community_members_rolenow includes'admin'(migration 015). - Subdomain redirect —
community.nexusnode.appproperly redirects to the registered instance URL (deep links preserved).
Full changelog: CHANGELOG.md