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

Add minimal template

+117
+96
templates/minimal/flake.lock
··· 1 + { 2 + "nodes": { 3 + "den": { 4 + "locked": { 5 + "lastModified": 1763619754, 6 + "narHash": "sha256-KfJxW0soJ9ZSqstmmdWIUcGxFhu7iqPRmCVlvv4b3hY=", 7 + "owner": "vic", 8 + "repo": "den", 9 + "rev": "71cf31d5e045509c2f5555db2ad36dfaa82fa26d", 10 + "type": "github" 11 + }, 12 + "original": { 13 + "owner": "vic", 14 + "repo": "den", 15 + "type": "github" 16 + } 17 + }, 18 + "flake-aspects": { 19 + "locked": { 20 + "lastModified": 1763284357, 21 + "narHash": "sha256-mPMHkhpOIsj2lg+KIcapFd4uj2N/9mZZ6RZBo/p5O1c=", 22 + "owner": "vic", 23 + "repo": "flake-aspects", 24 + "rev": "6a6d47f531ad57ac854cee689e84f2e28861ec49", 25 + "type": "github" 26 + }, 27 + "original": { 28 + "owner": "vic", 29 + "repo": "flake-aspects", 30 + "type": "github" 31 + } 32 + }, 33 + "flake-parts": { 34 + "inputs": { 35 + "nixpkgs-lib": [ 36 + "nixpkgs" 37 + ] 38 + }, 39 + "locked": { 40 + "lastModified": 1762980239, 41 + "narHash": "sha256-8oNVE8TrD19ulHinjaqONf9QWCKK+w4url56cdStMpM=", 42 + "owner": "hercules-ci", 43 + "repo": "flake-parts", 44 + "rev": "52a2caecc898d0b46b2b905f058ccc5081f842da", 45 + "type": "github" 46 + }, 47 + "original": { 48 + "owner": "hercules-ci", 49 + "repo": "flake-parts", 50 + "type": "github" 51 + } 52 + }, 53 + "import-tree": { 54 + "locked": { 55 + "lastModified": 1763263999, 56 + "narHash": "sha256-AZ4UkBJQKfaL9sX+/mzc1xBtcJk8hDQGkhjWX0Py5hU=", 57 + "owner": "vic", 58 + "repo": "import-tree", 59 + "rev": "058bd03ac818ea349946323ae3c2837b4cab7f22", 60 + "type": "github" 61 + }, 62 + "original": { 63 + "owner": "vic", 64 + "repo": "import-tree", 65 + "type": "github" 66 + } 67 + }, 68 + "nixpkgs": { 69 + "locked": { 70 + "lastModified": 1763464769, 71 + "narHash": "sha256-AJHrsT7VoeQzErpBRlLJM1SODcaayp0joAoEA35yiwM=", 72 + "owner": "nixos", 73 + "repo": "nixpkgs", 74 + "rev": "6f374686605df381de8541c072038472a5ea2e2d", 75 + "type": "github" 76 + }, 77 + "original": { 78 + "owner": "nixos", 79 + "ref": "nixpkgs-unstable", 80 + "repo": "nixpkgs", 81 + "type": "github" 82 + } 83 + }, 84 + "root": { 85 + "inputs": { 86 + "den": "den", 87 + "flake-aspects": "flake-aspects", 88 + "flake-parts": "flake-parts", 89 + "import-tree": "import-tree", 90 + "nixpkgs": "nixpkgs" 91 + } 92 + } 93 + }, 94 + "root": "root", 95 + "version": 7 96 + }
+13
templates/minimal/flake.nix
··· 1 + { 2 + outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } (inputs.import-tree ./modules); 3 + 4 + inputs = { 5 + nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; 6 + flake-parts.url = "github:hercules-ci/flake-parts"; 7 + flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs"; 8 + 9 + import-tree.url = "github:vic/import-tree"; 10 + flake-aspects.url = "github:vic/flake-aspects"; 11 + den.url = "github:vic/den"; 12 + }; 13 + }
+8
templates/minimal/modules/den.nix
··· 1 + { inputs, den, ... }: 2 + { 3 + systems = builtins.attrNames den.hosts; 4 + imports = [ inputs.den.flakeModule ]; 5 + 6 + den.hosts.x86_64-linux.igloo.users.tux = { }; 7 + den.aspects.igloo = { }; 8 + }