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
at cross 29 lines 612 B view raw
1{ den, ... }: 2{ 3 den.aspects.alice.includes = [ 4 # alice is always admin in all its hosts 5 den._.primary-user 6 ]; 7 8 den.aspects.will.includes = [ 9 # will is primary user in WSL NixOS. 10 den._.primary-user 11 ]; 12 13 perSystem = 14 { 15 checkCond, 16 honeycrisp, 17 adelie, 18 ... 19 }: 20 { 21 checks.alice-primary-on-macos = checkCond "den._.primary-user sets macos primary" ( 22 honeycrisp.config.system.primaryUser == "alice" 23 ); 24 25 checks.will-is-wsl-default = checkCond "wsl.defaultUser defined" ( 26 adelie.config.wsl.defaultUser == "will" 27 ); 28 }; 29}