https://github.com/42loco42/aquaris
Opinionated & high level NixOS module library
https://github.com/42loco42/aquaris
nix nixos nixos-configuration nixos-module nixos-modules
Last synced: about 1 month ago
JSON representation
Opinionated & high level NixOS module library
- Host: GitHub
- URL: https://github.com/42loco42/aquaris
- Owner: 42LoCo42
- Created: 2023-12-21T20:59:50.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-13T09:01:33.000Z (about 1 year ago)
- Last Synced: 2024-04-13T23:49:10.315Z (about 1 year ago)
- Topics: nix, nixos, nixos-configuration, nixos-module, nixos-modules
- Language: Nix
- Homepage:
- Size: 223 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.org
Awesome Lists containing this project
README
* Aquaris - My NixOS module library
Use Aquaris to easily manage related machines, their users and secrets!** Quickstart
Check out the [[file:docs/quickstart.org][quickstart]] guide and the provided [[file:example][example]] configuration!** Declarative filesystem configuration
Inspired by [[https://github.com/nix-community/disko][disko]], but dissatisfied with its verbosity,
suboptimal integration and some edge-case bugs,
Aquaris implements a fairly complete filesystem configuration library.It supports regular filesystems, btrfs subvolumes, swap,
LUKS-encrypted partitions and even complex filesystems like
LVM Volume Groups & Logical Volumes
and ZFS pools and datasets.With very compact semantics, provided default options
and deep integration into the rest of Aquaris's modules,
most disko users should find this library a worthy replacement
for [[https://github.com/nix-community/disko/blob/276a0d055a720691912c6a34abb724e395c8e38a/example/swap.nix][dozens]] of [[https://github.com/nix-community/disko/blob/276a0d055a720691912c6a34abb724e395c8e38a/example/luks-btrfs-subvolumes.nix][lines]] of [[https://github.com/nix-community/disko/blob/276a0d055a720691912c6a34abb724e395c8e38a/example/zfs.nix][code]]!** Secrets management
Aquaris uses [[https://github.com/42LoCo42/sillysecrets][sillysecrets]] for powerful group-based secret management.
Every group can become an encryption target (by specifying a public key)
and can also contain the secrets of other groups
or grant them access to their own.** Documentation
- [[file:docs/lib.org][Standard library]]
- Modules:
- [[file:docs/module/caches.org][Binary caches]]
- [[file:docs/module/dnscrypt.org][Local dnscrypt proxy]]
- [[file:docs/module/filesystems.org][Filesystems]]
- [[file:docs/module/home.org][home-manager settings]]
- [[file:docs/module/machine.org][General machine settings]]
- [[file:docs/module/persist.org][root-on-tmpfs and persistency]]
- [[file:docs/module/secrets.org][Secrets management]]
- [[file:docs/module/users.org][User management]]** TODOs
Check out the [[file:todo/TODO.org][TODO file]]!