| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
den and vic's aspect libs made for you with Love++ and AI--. If you like my work, consider sponsoring
Write a feature once. Run it on every host, user, and platform you have — and share it with anyone, flake or not.
Den turns Nix configuration into composable features instead of per-host piles of modules. A Den aspect is a plain function: give it context (your hosts and users) and it returns configuration for every Nix class it touches — nixos, darwin, homeManager, hjem, or a class you invent.
# An aspect is a function of context that returns
# configuration for many Nix classes at once.
den.aspects.gaming = { host, user }: {
nixos = { pkgs, ... }: { programs.steam.enable = true; };
darwin = { pkgs, ... }: { /* ... */ };
homeManager = { pkgs, ... }: { /* ... */ };
includes = [ den.aspects.performance ]; # aspects compose
provides.emulation = { nixos = { /* ... */ }; }; # and nest
};That one idea — a feature as a function — is what makes the rest possible.
Four concepts, one job each:
Feature-first, not host-first. Traditional setups start from hosts and push modules down; Den flips that — features are primary, hosts just select them.
Den embraces your Nix. With or without flakes, flake-parts, or home-manager. Zero dependencies. Every part is optional and replaceable — Den works with the setup you already have, and gets out of the way.
# a MicroVM
nix run github:denful/den?dir=templates/microvm#runnable-microvm
# a standalone neovim
nix run github:denful/den?dir=templates/nvf-standalone#my-neovim
# a qemu VM
nix run github:denful/den|
Pick a starting point and grow from there:
Growing adoption: usage search |
Den takes the Dendritic pattern to a whole new level, and I cannot imagine going back.
— @adda, early Den adopter (after Dendritic flake-parts and Unify)
I'm super impressed with den so far, I'm excited to try out some new patterns that Unify couldn't easily do.
— @quasigod, author of Unify
Massive work you did here!
— @drupol, author of “Flipping the Configuration Matrix”
Thanks for the awesome library and the support for non-flakes… it's positively brilliant! I really hope this gets wider adoption.
— @vczf, at #den-lib:matrix.org
Den is a playground for some very advanced concepts… some of its ideas will play a role in future Nix areas. There are some raw diamonds in Den.
— @Doc-Steve, author of the Dendritic Design Guide
| Back | FazBrowse Home | New Git URL |