What I learned building a from-scratch distro with a Nix-like, content-addressed package manager

https://preview.redd.it/13pqiuih3s9h1.png?width=1366&format=png&auto=webp&s=a12a7b390bbefd417f6d9509216887c5ca89f9e4

Disclosure up front: this is my own project (Svitlo), I am not here to

advertise, the post is about the engineering.

I spent the last few months building an independent distro from source,

no fork, no upstream package base. A few things I learned that might be

useful to others doing source-based or reproducible work:

- A content-addressed store (path = hash of all build inputs) makes

multiple versions coexist for free, and rollback becomes trivial

because a generation is just a symlink set.

- Hashing the canonical form of a recipe, not its raw text, avoids

rebuilding the world on cosmetic edits. This mattered more than I

expected for build times.

- Going pure Wayland from the base (no X11, XWayland optional) removed a

whole hidden dependency layer that general-purpose distros pull in by

default.

- Building COSMIC fully from source surfaced a lot of assumptions about

what is normally shipped as a blob.

Happy to go into the package manager design (promin) or the toolchain

bootstrap if anyone is interested. It is beta and single-maintainer, so

I am mostly after critique of the approach.

Source: https://github.com/SvitloLinux

Posted Jun 27, 2026, 7:34 AM UTC

10
Loading comments…