Aiden McClelland 313b2df540 feat: add check-dns gateway endpoint and fix per-interface routing tables
Add a `check-dns` RPC endpoint that verifies whether a gateway's DNS
is properly configured for private domain resolution. Uses a three-tier
check: direct match (DNS == server IP), TXT challenge probe (DNS on
LAN), or failure (DNS off-subnet).

Fix per-interface routing tables to clone all non-default routes from
the main table instead of only the interface's own subnets. This
preserves LAN reachability when the priority-75 catch-all overrides
default routing. Filter out status-only flags (linkdown, dead) that
are invalid for `ip route add`.
2026-02-17 16:22:24 -07:00
2026-02-14 12:24:16 -07:00
2026-02-02 21:09:19 -07:00
2026-02-14 08:15:50 -07:00
2026-02-14 08:15:50 -07:00
2026-02-14 08:15:50 -07:00
2024-03-20 13:32:57 -06:00
2025-06-25 09:55:50 -04:00
2023-10-05 19:37:31 +00:00
2026-02-14 08:15:50 -07:00

What is StartOS?

StartOS is an open-source Linux distribution for running a personal server. It handles discovery, installation, network configuration, data backup, dependency management, and health monitoring of self-hosted services.

Tech stack: Rust backend (Tokio/Axum), Angular frontend, Node.js container runtime with LXC, and a custom diff-based database (Patch-DB) for reactive state synchronization.

Services run in isolated LXC containers, packaged as S9PKs — a signed, merkle-archived format that supports partial downloads and cryptographic verification.

What can you do with it?

StartOS lets you self-host services that would otherwise depend on third-party cloud providers — giving you full ownership of your data and infrastructure.

Browse available services on the Start9 Marketplace, including:

  • Bitcoin & Lightning — Run a full Bitcoin node, Lightning node, BTCPay Server, and other payment infrastructure
  • Communication — Self-host Matrix, SimpleX, or other messaging platforms
  • Cloud Storage — Run Nextcloud, Vaultwarden, and other productivity tools

Services are added by the community. If a service you want isn't available, you can package it yourself.

Getting StartOS

Buy a Start9 server

The easiest path. Buy a server from Start9 and plug it in.

Build your own

Install StartOS on your own hardware. Follow one of the DIY guides. Reasons to go this route:

  1. You already have compatible hardware
  2. You want to save on shipping costs
  3. You prefer not to share your physical address
  4. You enjoy building things

Build from source

See CONTRIBUTING.md for environment setup, build instructions, and development workflow.

Contributing

There are multiple ways to contribute: work directly on StartOS, package a service for the marketplace, or help with documentation and guides. See CONTRIBUTING.md or visit start9.com/contribute.

To report security issues, email security@start9.com.

Description
Languages
Rust 52.1%
TypeScript 33.3%
HTML 8.2%
Shell 2.1%
SCSS 2%
Other 2.3%