diff --git a/README.md b/README.md index 1075d5f..e8cfed4 100644 --- a/README.md +++ b/README.md @@ -2,4 +2,16 @@ Fruix is a Guix-like system running on FreeBSD but not GNU, using Shepherd, building GNU packages, with a BSD userland, and a functional store similar to Nix but not Nix. +In Fruix, the FreeBSD platform is represented as foundational store artifacts and updated through the same generation mechanism as the rest of the system. + Fruix is a system where everything that exists on the machine exists for a reason that can be explained. + +Every Fruix system must remain fully understandable and recoverable using only text files, a shell, and standard system tools. + +- Every host has a local config repository. +- Every host has a persistent system identity key. +- Every applied change corresponds to a commit and a generation. +- Secrets are declared in config but realized only at runtime. +- Secrets are encrypted to explicit recipients derived from host/user identity. +- Services explicitly declare their secret dependencies. +- The orchestration layer operates only through these primitives.