Modular, context-aware and aspect-oriented dendritic Nix configurations. Discussions: https://oeiuwq.zulipchat.com/join/nqp26cd4kngon6mo3ncgnuap/ den.oeiuwq.com
configurations den dendritic nix aspect oriented
8
fork

Configure Feed

Select the types of activity you want to include in your feed.

add eval example

+28 -7
+28 -7
templates/bogus/modules/bug.nix
··· 1 - { inputs, den, ... }: 1 + { 2 + inputs, 3 + den, 4 + lib, 5 + ... 6 + }: 2 7 { 3 8 den.hosts.x86_64-linux.igloo.users.tux = { }; 4 9 5 - # See [Debugging Tips](https://den.oeiuwq.com/debugging.html) 6 - flake.den = den; 7 - 10 + den.aspects.igloo.includes = [ den.aspects.testing ]; 8 11 # Use aspects to create a **minimal** bug reproduction 9 12 den.aspects.testing = 10 13 { user, ... }@ctx: ··· 12 15 homeManager.programs.vim.enable = user.userName == "tux"; 13 16 }; 14 17 15 - den.aspects.igloo.includes = [ den.aspects.testing ]; 16 - 17 - flake.tests."test it works" = 18 + # `nix-unit --flake .#.tests.systems` 19 + # `nix eval .#.tests.testItWorks` 20 + flake.tests.testItWorks = 18 21 let 19 22 igloo = inputs.self.nixosConfigurations.igloo.config; 20 23 tux = igloo.home-manager.users.tux; ··· 25 28 { 26 29 inherit expr expected; 27 30 }; 31 + 32 + # See [Debugging Tips](https://den.oeiuwq.com/debugging.html) 33 + flake.den = den; 34 + # `nix eval .#.value` 35 + flake.value = 36 + let 37 + aspect = den.aspects.testing { 38 + user.userName = "tux"; 39 + host.hostName = "fake"; 40 + }; 41 + modules = [ 42 + (aspect.resolve { class = "homeManager"; }) 43 + { options.programs = lib.mkOption { }; } 44 + ]; 45 + evaled = lib.evalModules { inherit modules; }; 46 + in 47 + evaled.config; 48 + 28 49 }