Casita debuts as content-addressed store for Nix rewrite
The Apache-licensed layer targets shared source and build artifacts with deduplication, sync, and garbage collection.
Domen Kožar has introduced Casita, a standalone content-addressed object store meant to hold source code and build artifacts as the first layer of a broader Nix rewrite.
Casita aims to give verified storage, deduplication, synchronization, and garbage collection a clean boundary so higher Nix pieces can be rebuilt on top of it. Kožar frames the split as a path toward mainstreaming Nix: Casita is Apache 2 licensed, in contrast to the GPL-3 Snix castore, which he calls an important difference for adoption.
Design-wise, Casita models a generic object graph rather than a fixed set of services that own their own storage logic. That makes it expressible as a Git storage backend, including mutable refs, and it already supports pack-style on-disk representation and an rsync-style protocol to sync differences between machines. The implementation is pure Rust without a built-in gRPC stack; callers can plug their own formats, importers, and sync protocols. A sketched CasitaFS kernel filesystem is described as the long-term performance goal, though ordinary filesystems such as ZFS can sit underneath today.
Early feedback asked how Casita relates to Snix and whether the store could absorb other artifact types. Kožar answered that OCI images are already importable, and that the same generic graph is meant to cover a wide range of immutable blobs plus metadata roots. Whether the layer later becomes a practical backend for ecosystems beyond Nix, such as Haskell package archives that today ship huge tarballs or awkward Git mirrors, remains an open community question.