My repo serves as an educational example showing how den and my related libs structure a Dendritic NixOS setup with named, composable aspects instead of file imports. This is just one of many possible ways to organize a dendritic implementation. Feel free to explore, and share how you do things.
This specific setup is powered by den · flake-aspects · denful · flake-file · import-tree · flake-parts
--
# Traditional imports # Dendritic aspects
imports = [ vix.nargun.includes = [
./hardware.nix vix.hardware
../../shared/desktop.nix vix.niri-desktop
]; ];Aspects are named values, not file paths. They compose without relative path juggling.
modules/
├── dendritic.nix # Bootstraps dendritic libs
├── namespace.nix # Creates `vix`, `vic`, `my` namespaces.
├── my/ # Infra related aspects
│ |── hosts.nix # Declares hosts, wires default profiles
│ |── user.nix # Composes aspect used across all hosts.
│ └── workstation.nix # Composes host setup.
├── vic/ # User aspects and user settings.
│ └── *.nix # many home-manager and os-config from vic.
└── community/vix/ # Community shared aspects
└── *.nix # Exposed at flake.denful.vix