Releases: Obiente/selfhost
Release list
Selfhost 0.1.4
Guided setup
Start with selfhost guide. App installation, supported onboarding and identity integrations, native settings, updates, existing app discovery, databases, servers, proxies and recurring tasks now have guided terminal flows. Ordinary setup no longer requires hand-written request JSON or copying review revisions between commands.
The dashboard and TUI include typed list and structured settings controls, container discovery and reviewed reconnection, and database source editing and removal protections. Reconnecting an app clears previous management permissions.
Remote hosting and access
selfhost dashboard setupguides background service installation.- Remote-only Docker mode supports hosting the dashboard separately from Docker engines.
- Dedicated SSH key setup guides authorization, verified host trust and connection testing.
- SSH-session tunnel guidance and
selfhost dashboard diagnosehelp diagnose browser access. - Identity setup guides configuration from the provider directory and provides a setup code for another dashboard host.
Direct binary updates
Official standalone binaries support reviewed updates through the CLI, TUI and dashboard, with checksum checks and executable backups. Users on 0.1.3 should upgrade once with the 0.1.4 installer to receive this support.
Installers now update existing binaries without --force, skip unchanged binaries and configure persistent PATH entries. A piped Unix installer cannot change its parent shell, so use the documented && export PATH="$HOME/.local/bin:$PATH" suffix for immediate access.
Reliability
Fixed non-interactive standalone initialization and transient project-busy errors caused by retained Unix file descriptors. Added a lock-release regression test.
Release maintenance
Removed the obsolete npm publication recovery job, its input and helper scripts. Normal release builds, installation checks and registry publication remain in place. Rust and npm caching, one full Rust test run per operating system, and a single packaged-source installation build reduce repeated compilation. All six platforms retain native smoke and installer checks.
Scope
Automatic setup depends on the app/provider profile. Private-network registration does not enroll peers, and replacing stored database credentials does not rotate database accounts. No blog drafts or local data are included.
Install with npx selfhost@0.1.4, pnpm dlx selfhost@0.1.4, npm install -g selfhost@0.1.4, cargo install selfhost --locked --version 0.1.4, or the attached standalone installers. Documentation: https://selfhost.obiente.org/getting-started
Selfhost 0.1.3
Changes
- Add temporary remote setup for headless servers, VMs and LXCs:
selfhost serve --bind YOUR_PRIVATE_OR_VPN_IP --setup. - Protect setup with a one-use link that expires after 10 minutes and an administrator session that expires after 30 minutes. The API keeps its authentication, origin and CSRF checks.
- Show setup guidance in the dashboard and request the intended HTTPS address when connecting an identity provider. Temporary setup is never saved in background services.
- Fix Cargo updates on Rustup installations by preserving the Cargo launcher symlink name.
- Replace typed phrases with
y/Nprompts in the interactive CLI updater, and include the build-log location when staging fails.
Upgrade and start setup
If upgrading from 0.1.1 or 0.1.2, use Cargo directly to avoid the old updater bug:
cargo install selfhost --locked --version 0.1.3
selfhost serve --bind YOUR_LXC_IP --setupUse an IP assigned to the server, not 0.0.0.0. Open the complete setup link printed in the terminal. Setup uses HTTP: restrict access to your browser's machine and use a trusted private network or encrypted VPN. Configure HTTPS and identity-provider sign-in in Access, test your domain, then restart without --setup.
Also available through npx selfhost@0.1.3, pnpm dlx selfhost@0.1.3, and the standalone installers and binaries attached below. Direct-binary upgrades require the installer's --force or -Force option and retain a backup of the replaced binary.
Supported platforms: Linux, macOS and Windows, each on x64 and ARM64. The archives and binaries include checksums.
Selfhost 0.1.2
Selfhost 0.1.2
This release adds configurable dashboard listener addresses for reverse proxies on other hosts, VMs and LXCs.
Dashboard binding
selfhost serve --bind IP --port 8372selects a listener address. The default remains127.0.0.1.selfhost dashboard install --bind IPpreserves the listener in the persistent service. Dashboard update restarts retain it too.- Non-loopback listeners require a configured HTTPS public address, identity provider and explicitly authorized administrators before startup.
- Local recovery and local sessions now check the actual TCP peer. Forged localhost or forwarding headers do not grant local access.
- The dashboard shows its listener address, and domain instructions use the selected backend IP.
Configure and verify identity login locally first. Use a private or VPN address for a remote proxy, restrict backend traffic to the proxy, preserve the public Host header and encrypt the connection between servers. 0.0.0.0 listens on all IPv4 interfaces; it does not configure a firewall or enable TLS on the backend.
selfhost serve --bind 10.20.0.10 --port 8372Replace the example IP with an address assigned to your Selfhost machine. A private-IP listener prints the public sign-in address and local recovery instructions instead of an unusable localhost link.
Install or update
npx selfhost@0.1.2 --help
pnpm dlx selfhost@0.1.2 --help
cargo install selfhost --locked --version 0.1.2Direct installation without npm or Cargo:
curl --proto '=https' --tlsv1.2 -fsSL https://github.com/Obiente/selfhost/releases/download/v0.1.2/install.sh | sh -s -- --version 0.1.2Windows PowerShell:
& ([scriptblock]::Create((Invoke-RestMethod https://github.com/Obiente/selfhost/releases/download/v0.1.2/install.ps1))) -Version 0.1.2To replace a direct installation, stop its dashboard first and add --force or PowerShell -Force. The installer verifies checksums and keeps the previous binary as a backup. Select the same custom installation directory if you used one. Automatic staged activation through selfhost update remains specific to official Cargo installations.
Native downloads support Windows, Linux and macOS on x64 and ARM64. Verify them against BINARY-SHA256SUMS; SHA256SUMS covers the npm and Cargo archives. Native binaries are not yet signed or notarized.
Read the dashboard hosting guide and installation guide.
Selfhost 0.1.1
Selfhost 0.1.1
Selfhost brings a CLI, terminal interface and optional dashboard together around portable Compose configurations. You can generate a setup once, keep using the CLI, or choose ongoing management.
Included
- A catalogue of 48 apps and stacks with deployment choices and app-specific configuration profiles.
- Existing-app links, including Nextcloud AIO and ZITADEL, with separate permissions for management actions.
- PostgreSQL, MySQL, MariaDB and MongoDB sources, including dedicated, shared and external database configurations.
- Identity-provider connections, app setup workflows, maintenance actions, backups and tasks.
- An embedded dashboard, served on localhost port 8372 by default.
- npm launchers for Windows, Linux and macOS, on x64 and ARM64, plus a Cargo source package.
Try it
npx selfhost@0.1.1 --help
npx selfhost@0.1.1 serveOr use pnpm dlx selfhost@0.1.1, pnpx selfhost@0.1.1, or cargo install selfhost --locked --version 0.1.1.
Open the one-use sign-in link printed by serve. To explore an existing service, use Existing apps → Link an app. Start with its URL; container monitoring needs a connection to the host or guest actually running Docker. Linking an app does not transfer its lifecycle to Selfhost. Connecting an identity provider for Selfhost login is a separate step under Access.
Read the getting started guide and existing-app guide.
Direct binary installation
No npm, Cargo or compiler is required. The shell installer supports Linux/macOS and the PowerShell installer supports Windows, on x64 and ARM64.
Linux/macOS:
curl --proto '=https' --tlsv1.2 -fsSL https://github.com/Obiente/selfhost/releases/download/v0.1.1/install.sh | sh -s -- --version 0.1.1Windows PowerShell:
& ([scriptblock]::Create((Invoke-RestMethod https://github.com/Obiente/selfhost/releases/download/v0.1.1/install.ps1))) -Version 0.1.1The installers verify SHA-256 checksums and install into a user-owned directory. Existing binaries require explicit replacement (--force or -Force) and receive a backup. Direct installations update by rerunning the installer; automatic activation through selfhost update is not available for this installation method in 0.1.1.
For manual installation, download your platform binary and verify it against BINARY-SHA256SUMS. Native binaries match the verified npm bundle. SHA256SUMS covers the npm and Cargo archives.
Scope and limits
This is an early release. Consult the per-app documentation for supported operations and known gaps. Live Proxmox migration and every provider-specific browser login flow have not been verified. Existing database migration and automatic credential rotation are not included. Native binaries are not Authenticode-signed or notarized.