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

Update Den at npins to make noflake work from checkout (#162)

authored by oeiuwq.com and committed by

GitHub 36b571d0 f9563fa9

+21 -9
+1 -1
.github/workflows/test.yml
··· 35 35 } 36 36 EOF 37 37 git add templates/noflake/modules/ci-runtime.nix 38 - - run: cd templates/noflake && nix-build -A nixosConfigurations.igloo.config.system.build.toplevel 38 + - run: cd templates/noflake && nix-build -A flake.nixosConfigurations.igloo.config.system.build.toplevel 39 39 minimal: 40 40 needs: [non-draft] 41 41 name: minimal
+10 -2
templates/noflake/README.md
··· 7 7 Try it with: 8 8 9 9 ```shell 10 - nixos-rebuild build --file . -A nixosConfigurations.igloo 10 + npins update den # make sure you use latest Den 11 + ``` 12 + 13 + ```shell 14 + nixos-rebuild build --file . -A flake.nixosConfigurations.igloo 11 15 ``` 12 16 13 17 or 14 18 15 19 ```shell 16 - nix-build -A nixosConfigurations.igloo.config.system.build.toplevel 20 + nix-build -A flake.nixosConfigurations.igloo.config.system.build.toplevel 17 21 ``` 22 + 23 + > NOTE: Den needs a top-level attribute where to place configurations. 24 + > For convenience, it is the `flake` top-level attribute, following the 25 + > flake outputs schema, even if Den does not needs flakes / flake-parts.
+1 -3
templates/noflake/default.nix
··· 11 11 }).config; 12 12 13 13 in 14 - # Den outputs configurations at flake top-level attr 15 - # even when it does not depend on flakes or flake-parts. 16 - (import ./with-inputs.nix outputs).flake 14 + import ./with-inputs.nix outputs
+6
templates/noflake/modules/den.nix
··· 3 3 # we can import this flakeModule even if we dont have flake-parts as input! 4 4 imports = [ inputs.den.flakeModule ]; 5 5 6 + den.default.nixos = { 7 + # remove for real host 8 + fileSystems."/".device = "/dev/fake"; 9 + boot.loader.grub.enable = false; 10 + }; 11 + 6 12 # tux user on igloo host. 7 13 den.hosts.x86_64-linux.igloo.users.tux = { }; 8 14
+3 -3
templates/noflake/npins/sources.json
··· 9 9 }, 10 10 "branch": "main", 11 11 "submodules": false, 12 - "revision": "2dab67aab2214b84f5ac15adc4e900e90d07f17b", 13 - "url": "https://github.com/vic/den/archive/2dab67aab2214b84f5ac15adc4e900e90d07f17b.tar.gz", 14 - "hash": "sha256-LKTq2QTXzA5lR0xhrG/hkWtjvKnr91mvIabBof0/M4A=" 12 + "revision": "f9563fa9194c0c65abcfba56b0cbb67c7a7eb395", 13 + "url": "https://github.com/vic/den/archive/f9563fa9194c0c65abcfba56b0cbb67c7a7eb395.tar.gz", 14 + "hash": "sha256-OPnii/4tJYUHytIufFkzbcz6K/9ihvqj7vAOTgf6KWg=" 15 15 }, 16 16 "flake-aspects": { 17 17 "type": "Git",