Skip to content

KITPro Server v0.1.0-alpha.13

Pre-release
Pre-release

Choose a tag to compare

@keepittechie keepittechie released this 26 Sep 16:50
· 42 commits to main since this release

KITPro Server v0.1.0-alpha.13 release notes

Status: prepared release candidate. Do not treat this document as publication
or a release tag.

Alpha.13 expands the trusted catalog to 20 applications, adds bounded network
services and typed application configuration, strengthens package and runtime
recovery, and qualifies Ubuntu 26.04 LTS as a Supported platform.

Platform support

  • Debian 13 amd64 is Supported.
  • Ubuntu 26.04 LTS amd64 is Supported with the same qualified .deb.
  • Fully updated Arch Linux x86_64 with linux-lts is Supported.
  • Rocky Linux 10 amd64 and Podman remain Experimental.

Supported hosts use rootful Docker, systemd, and enforcing AppArmor. They must
configure an operator-selected, non-overlapping Docker default address pool.
KITPro checks current routes, Docker networks, and available child networks.
It does not edit /etc/docker/daemon.json or choose a universal CIDR.

The Experimental Rocky package, SELinux policy, rootful Podman 5 host,
Quadlet, crun, firewalld, trusted-storage registration, and reboot recovery
pass. Application installation is unavailable on Rocky in alpha.13 because
the Podman adapter does not implement the staged-generation lifecycle
contract. The normal API fails before it creates a runtime, network, or
committed generation.

Applications

The 15 existing applications remain in the catalog: FreshRSS, Uptime Kuma,
Mealie, Memos, Actual Budget, Vaultwarden, Home Assistant, Paperless-ngx, Open
WebUI, IT-Tools, Ollama, Jellyfin, Navidrome, Audiobookshelf, and SFTPGo.

Alpha.13 adds:

  • Forgejo, with managed /data, HTTP only, and no Git-over-SSH exposure.
  • Plex, with managed configuration, read-only media, CPU-only operation, and
    no automatic remote access.
  • Nextcloud, as an Experimental SQLite small-instance profile.
  • Pi-hole, as an Experimental DNS-only Network Service with TCP and UDP port
    53, a loopback administration endpoint, and lifecycle acknowledgement.
  • Syncthing, as an Experimental manual-peer TCP-only profile with a loopback
    GUI, fixed TCP port 22000, and no discovery, relays, NAT traversal, QUIC, or
    UDP publication.

Syncthing uses an offline typed bootstrap, preserves its application-owned
identity, and restores the final owner and mode before normal startup. Live
qualification covered manual device pairing, explicit TCP addresses,
bidirectional file transfer with SHA-256 verification, managed configuration
restore, device identity, peer and folder state, and exclusion of external
/sync data.

Lifecycle, networking, and recovery

  • Schema-v8 networking supports multiple bindings, TCP and UDP, trusted fixed
    ports, same-number TCP and UDP, and transport-aware conflict detection.
  • Every application generation keeps a separate bridge network. KITPro does
    not merge networks or shorten retained-generation guarantees to save address
    space.
  • Runtime removal retains the installation, managed data, external-storage
    bindings, and generated secrets.
  • Reconciliation verifies runtime identity, image identity, mounts, bindings,
    and candidate cleanup before it advances the committed generation.
  • Failed installations retain their installation identity and storage choices
    so the supported retry uses the same installation.
  • The helper recovers orphaned failed candidates without adopting unknown
    runtime state.

Backup and restore

Application backup format version 1 protects declared managed files, detected
SQLite databases, and generated secrets for restore into the same existing
installation. Imported storage remains excluded and untouched. Alpha.13 adds
live qualification for the new applications and restores application-owned
configuration without changing external content.

Backups are root-owned local archives with restrictive permissions. They are
not encrypted by KITPro. Generated application secrets are root-bound
plaintext in helper state and restrictive backups.

Package transitions

The Debian alpha.12 to alpha.13 transition verifies the incoming package,
both databases, and a paired backup set before unpack and migration. Failed
preflight restores the services that were active before the check. The
transition migrates schema 13 to schema 14.

Arch uses a package-bound upgrade wrapper and pacman pre-transaction hook. The
wrapper validates the incoming package and AppArmor profile before pacman can
change package files.

Security

Alpha.13 keeps authentication, CSRF, Host, Origin, helper peer identity,
AppArmor or SELinux, typed protocol validation, exact runtime ownership,
symlink and hardlink defenses, secret redaction, and storage identity checks.
Credential reveal is limited to a manifest-authorized public credential ID and
returns Cache-Control: no-store.

Limits

A running container is not proof that an application is ready. KITPro does not
provide a reverse proxy, Certbot or ACME management, Cloudflare Tunnel
integration, automatic public access, host-to-host restore, bare-host
recovery, imported-storage backup, or destructive application-data deletion.

Verify all downloaded files with the alpha.13 checksum manifest. Publication,
tagging, and upload remain separate human-authorized actions.