chore: polish repo — README badges, CHANGELOG, LICENSE, install.sh cleanup

- README: add shields.io badges, fix stack (Rust, not Node.js),
  add licensing plan table, improve structure throughout
- CHANGELOG: proper Keep a Changelog format, document v0.1.0-alpha
- LICENSE: expand source-available terms with clearer restrictions
- install.sh: strip licensing/website-api build steps (those run on
  nixpanel.io/license.nixpanel.io, not on customer servers); add
  license key prompt + activation against license.nixpanel.io; keep
  only the panel DB; fix Apache to only expose ports 2083/2087
This commit is contained in:
NixReaper
2026-04-25 05:05:04 -05:00
parent f54b5cd582
commit 8b1e42171a
4 changed files with 294 additions and 412 deletions
+48 -85
View File
@@ -1,97 +1,60 @@
# NixPanel Changelog
# Changelog
All notable changes to NixPanel are documented here.
Versioning follows [Semantic Versioning](https://semver.org/).
All notable changes to NixPanel are documented here.
Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
Versions follow [Semantic Versioning](https://semver.org/).
---
## [0.5.0] — 2026-04-11
## [Unreleased]
### Bug Fixes
- Clean install on every update — `node_modules` and lock file are always regenerated fresh on the server platform, eliminating rollup native binary mismatches between Windows dev machines and Linux servers.
- `update.sh` no longer blocked by local `package-lock.json` changes.
- `.gitignore` corrected for `nixserver/` and `nixclient/` dist paths.
### Planned
- NixServer (WHM) — full Rust backend
- NixClient (cPanel) — full Rust backend
- DNS zone editor
- Email account management
- SSL certificate management via Let's Encrypt
- File manager
- MySQL/MariaDB database manager
- WordPress one-click installer
- Backup / restore system
- Multi-server support (Agency plan)
---
## [0.4.8] — 2026-04-11
## [0.1.0-alpha] — 2025-04-25
### Bug Fixes
- Login page now fetches version from `/api/health` dynamically instead of showing a hardcoded stale version number.
- Login page subtitle changed from "Web Host Manager" to "Admin Panel".
### Added
- **Installer** (`install.sh`) — fully automated Ubuntu 24.04 installer
- Self-updating: always fetches the latest version from GitHub before running
- Idempotent step tracking — re-runnable after failures without redoing completed steps
- Installs Apache 2, PHP 8.2 + 8.3 (via ondrej/php PPA), MariaDB, PowerDNS, Exim 4, Dovecot, SpamAssassin, Fail2ban, Certbot
- Configures Apache reverse proxy on ports 2083 (NixClient) and 2087 (NixServer)
- Prompts for admin credentials, hostname, and license key during install
- License activation against `https://license.nixpanel.io` with grace period fallback
- **Licensing server** (`nixpanel-licensing`) — central SaaS licensing
- Rust · Axum · SQLx · MariaDB
- RSA-4096 signed JWT license tokens
- Server IP binding with conflict detection
- Plans: Free, Solo ($9.99/mo), Host ($29.99/mo), Agency ($79.99/mo)
- Admin API with Argon2id authentication
- Validation logging and grace period enforcement
- Repo: [NixReaper/nixpanel-licensing](https://github.com/NixReaper/nixpanel-licensing)
- **Website API** (`nixpanel-website-api`) — nixpanel.io customer portal backend
- Rust · Axum · SQLx · MariaDB
- Stripe subscriptions (checkout sessions, billing portal, webhooks)
- Customer auth: register, login, email verification, password reset (Argon2id)
- License management: view active license, IP change requests
- SMTP transactional email via Lettre
- Repo: [NixReaper/nixpanel-website](https://github.com/NixReaper/nixpanel-website)
- **Website frontend** — nixpanel.io marketing & customer portal
- React 18 · TypeScript · Tailwind CSS · Vite
- Pages: Home, Pricing (monthly/annual toggle), Login, Register, Dashboard, Email Verify, Password Reset
### Infrastructure
- `.gitattributes` enforcing LF line endings for `.sh`, `.rs`, `.toml`, `.sql`, `.md` files
---
## [0.4.6] — 2026-04-11
### Changes
- Removed all WHM® trademark references throughout the panel. All instances replaced with "NixServer".
---
## [0.4.5] — 2026-04-11
### New Features
- **Day/Night mode toggle** — sun/moon flip switch in the dashboard info bar. Preference persisted across sessions.
### Bug Fixes
- Sidebar version refresh now clears stale value immediately and cache-busts the API response.
- `uptime` added to exec allowlist — fixes Hostname/OS showing `…` on the dashboard.
- Version fetch auto-retries every 5 s after failure (handles post-upgrade service restart window).
---
## [0.4.4] — 2026-04-11
### New Features
- **Server info bar** — cPanel-style strip at the top of the dashboard showing Username, Hostname, OS, NixPanel Version, live Load Averages, and Server Monitoring alert count.
---
## [0.4.3] — 2026-04-11
### New Features
- **Version display in sidebar** — shows installed version with up-to-date / update-available indicator.
- **One-click panel upgrade** — upgrade button in the sidebar footer runs `update.sh` in the background. Panel restarts automatically.
- **Check for updates** — refresh icon re-fetches version on demand.
---
## [0.4.2] — 2026-04-11
### New Features
- **NixServer sidebar redesigned** — full collapsible category sidebar with 29 categories and ~210 menu items. Live search, auto-expand active category, sidebar toggle.
---
## [0.4.1] — 2026-04-11
### Bug Fixes (Installer)
- SpamAssassin: Ubuntu 24.04 service name is `spamd`, not `spamassassin`.
- PowerDNS: `systemd-resolved` stub listener disabled before package install to free port 53.
- Git clone into pre-existing directory handled correctly.
- Apache 403 fixed — post-build `chmod 755/644` on all dist assets.
- Apache 500 fixed — `mod_proxy_http` and `mod_proxy_wstunnel` now enabled.
---
## [0.4.0] — 2026-04-11
### New Features
- Shell Access Manager — enable/disable SSH shell access per hosting account.
- Apache Log Viewer — view access/error logs per account.
- WebServer page rewritten to Apache-only stack.
---
## [0.3.x] — 2026-04-10
### Architecture
- Full service stack: Apache2 + PHP-FPM, PowerDNS, Exim4, Dovecot, MariaDB, SQLite (panel DB).
- Complete MariaDB management, email routing, certbot SSL, Fail2ban.
---
## [0.2.0]
- Initial development release. Renamed to NixServer / NixClient.
[Unreleased]: https://github.com/NixReaper/nixpanel/compare/v0.1.0-alpha...HEAD
[0.1.0-alpha]: https://github.com/NixReaper/nixpanel/releases/tag/v0.1.0-alpha