Generate flake.nix from module options. Discussions: https://oeiuwq.zulipchat.com/join/nqp26cd4kngon6mo3ncgnuap/ dendrix.oeiuwq.com/Dendritic.html
dendritic nix inputs

remove `nix-systems/systems`, use `lib` instead (#62)

* remove `nix-systems/systems`, use `lib.systems.flakeExposed` instead

* force using commit flake-file for updating

---------

Co-authored-by: Victor Borja <vborja@apache.org>

authored by

Pol Dellaiera
Victor Borja
and committed by
GitHub
619d2212 9d89918f

+35 -73
+4 -4
.github/workflows/flake-check.yaml
··· 39 39 EOF 40 40 mkdir templated; cd templated 41 41 nix flake init -t github:$GITHUB_REPOSITORY/$GITHUB_SHA#${{ matrix.template }} 42 - nix run .#write-flake -L --show-trace 42 + nix run .#write-flake -L --show-trace --override-input flake-file "github:$GITHUB_REPOSITORY/$GITHUB_SHA" 43 43 if test -d ./modules; then cp ../forced.nix ./modules/; fi; 44 44 if test -d ./flake-parts; then cp ../forced.nix ./flake-parts/; fi; 45 - nix run .#write-flake -L --show-trace 45 + nix run .#write-flake -L --show-trace --override-input flake-file "github:$GITHUB_REPOSITORY/$GITHUB_SHA" 46 46 nix flake metadata 47 - nix run .#write-flake -L --show-trace 48 - nix flake check -L --show-trace 47 + nix run .#write-flake -L --show-trace --override-input flake-file "github:$GITHUB_REPOSITORY/$GITHUB_SHA" 48 + nix flake check -L --show-trace --override-input flake-file "github:$GITHUB_REPOSITORY/$GITHUB_SHA" 49 49 unflake: 50 50 name: Check unflake 51 51 runs-on: ubuntu-latest
+1 -2
README.md
··· 173 173 flake-file.url = "github:vic/flake-file"; 174 174 flake-parts.url = "github:hercules-ci/flake-parts"; 175 175 nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; 176 - systems.url = "github:nix-systems/default"; 177 176 }; 178 177 179 - systems = import inputs.systems; 178 + systems = inputs.nixpkgs.lib.systems.flakeExposed; 180 179 } 181 180 ``` 182 181
+16 -32
dev/flake.lock
··· 7 7 ] 8 8 }, 9 9 "locked": { 10 - "lastModified": 1762521437, 11 - "narHash": "sha256-RXN+lcx4DEn3ZS+LqEJSUu/HH+dwGvy0syN7hTo/Chg=", 10 + "lastModified": 1768818222, 11 + "narHash": "sha256-460jc0+CZfyaO8+w8JNtlClB2n4ui1RbHfPTLkpwhU8=", 12 12 "owner": "numtide", 13 13 "repo": "devshell", 14 - "rev": "07bacc9531f5f4df6657c0a02a806443685f384a", 14 + "rev": "255a2b1725a20d060f566e4755dbf571bbbb5f76", 15 15 "type": "github" 16 16 }, 17 17 "original": { ··· 38 38 ] 39 39 }, 40 40 "locked": { 41 - "lastModified": 1762980239, 42 - "narHash": "sha256-8oNVE8TrD19ulHinjaqONf9QWCKK+w4url56cdStMpM=", 41 + "lastModified": 1769996383, 42 + "narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=", 43 43 "owner": "hercules-ci", 44 44 "repo": "flake-parts", 45 - "rev": "52a2caecc898d0b46b2b905f058ccc5081f842da", 45 + "rev": "57928607ea566b5db3ad13af0e57e921e6b12381", 46 46 "type": "github" 47 47 }, 48 48 "original": { ··· 53 53 }, 54 54 "import-tree": { 55 55 "locked": { 56 - "lastModified": 1763695721, 57 - "narHash": "sha256-tMfN/JkwWJ129cXDW+lK2gUcjklJ+LpTHj9LlneJRXg=", 56 + "lastModified": 1771045967, 57 + "narHash": "sha256-oYO4poyw0Sb/db2PigqugMlDwsvwLg6CSpFrMUWxA3Q=", 58 58 "owner": "vic", 59 59 "repo": "import-tree", 60 - "rev": "ca69d64711265c68cf71f6c029ab9f1a55a767f8", 60 + "rev": "c968d3b54d12cf5d9c13f16f7c545a06c9d1fde6", 61 61 "type": "github" 62 62 }, 63 63 "original": { ··· 136 136 }, 137 137 "nixpkgs": { 138 138 "locked": { 139 - "lastModified": 1770843696, 140 - "narHash": "sha256-9SFCZkVcpDOV6unH5hVEy4+dB0rxMuUoBnDAO6vshac=", 141 - "rev": "2343bbb58f99267223bc2aac4fc9ea301a155a16", 139 + "lastModified": 1771423170, 140 + "narHash": "sha256-V/p5M4cAMbu/MJBDn5YABy5QJgCFpsgrnXVVc2Uo5+k=", 141 + "rev": "bcc4a9d9533c033d806a46b37dc444f9b0da49dd", 142 142 "type": "tarball", 143 - "url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre944764.2343bbb58f99/nixexprs.tar.xz" 143 + "url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre948338.bcc4a9d9533c/nixexprs.tar.xz" 144 144 }, 145 145 "original": { 146 146 "type": "tarball", ··· 159 159 "nixpkgs-lib": [ 160 160 "nixpkgs" 161 161 ], 162 - "systems": "systems", 163 162 "treefmt-nix": "treefmt-nix" 164 163 } 165 164 }, 166 - "systems": { 167 - "locked": { 168 - "lastModified": 1681028828, 169 - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 170 - "owner": "nix-systems", 171 - "repo": "default", 172 - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 173 - "type": "github" 174 - }, 175 - "original": { 176 - "owner": "nix-systems", 177 - "repo": "default", 178 - "type": "github" 179 - } 180 - }, 181 165 "treefmt-nix": { 182 166 "inputs": { 183 167 "nixpkgs": [ ··· 185 169 ] 186 170 }, 187 171 "locked": { 188 - "lastModified": 1762938485, 189 - "narHash": "sha256-AlEObg0syDl+Spi4LsZIBrjw+snSVU4T8MOeuZJUJjM=", 172 + "lastModified": 1770228511, 173 + "narHash": "sha256-wQ6NJSuFqAEmIg2VMnLdCnUc0b7vslUohqqGGD+Fyxk=", 190 174 "owner": "numtide", 191 175 "repo": "treefmt-nix", 192 - "rev": "5b4ee75aeefd1e2d5a1cc43cf6ba65eba75e83e4", 176 + "rev": "337a4fe074be1042a35086f15481d763b8ddc0e7", 193 177 "type": "github" 194 178 }, 195 179 "original": {
-1
dev/flake.nix
··· 29 29 }; 30 30 nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; 31 31 nixpkgs-lib.follows = "nixpkgs"; 32 - systems.url = "github:nix-systems/default"; 33 32 treefmt-nix = { 34 33 inputs.nixpkgs.follows = "nixpkgs"; 35 34 url = "github:numtide/treefmt-nix";
+2 -8
modules/dendritic/systems.nix
··· 1 - { inputs, lib, ... }: 1 + { lib, ... }: 2 2 { 3 - 4 - flake-file.inputs = { 5 - systems.url = lib.mkDefault "github:nix-systems/default"; 6 - }; 7 - 8 - systems = lib.mkDefault (import inputs.systems); 9 - 3 + systems = lib.mkDefault lib.systems.flakeExposed; 10 4 }
-1
templates/default/flake.nix
··· 8 8 flake-file.url = "github:vic/flake-file"; 9 9 flake-parts.url = "github:hercules-ci/flake-parts"; 10 10 nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; 11 - systems.url = "github:nix-systems/default"; 12 11 }; 13 12 14 13 }
+1 -2
templates/default/modules/default.nix
··· 5 5 inputs.flake-file.flakeModules.default 6 6 ]; 7 7 8 - systems = import inputs.systems; 8 + systems = inputs.nixpkgs.lib.systems.flakeExposed; 9 9 10 10 flake-file.inputs = { 11 11 flake-file.url = "github:vic/flake-file"; 12 12 flake-parts.url = "github:hercules-ci/flake-parts"; 13 13 nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; 14 - systems.url = "github:nix-systems/default"; 15 14 }; 16 15 17 16 }
-1
templates/dendritic/flake.nix
··· 13 13 import-tree.url = "github:vic/import-tree"; 14 14 nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; 15 15 nixpkgs-lib.follows = "nixpkgs"; 16 - systems.url = "github:nix-systems/default"; 17 16 }; 18 17 19 18 }
-10
templates/parts/flake-parts/_meta/systems.nix
··· 1 - { 2 - description = "Sets up the default `systems` of flake-parts using `github:nix-systems/default`."; 3 - 4 - inputs = { 5 - systems.url = "github:nix-systems/default"; 6 - }; 7 - 8 - extraTrustedPublicKeys = [ ]; 9 - extraSubstituters = [ ]; 10 - }
+3 -3
templates/parts/flake-parts/systems.nix
··· 1 1 # --- flake-parts/systems.nix 2 2 { inputs, ... }: 3 3 { 4 - # NOTE We use the default `systems` defined by the `nix-systems` flake, if 4 + # NOTE We use the default `systems` defined by `nixpkgs`, if 5 5 # you need any additional systems, simply add them in the following manner 6 6 # 7 - # `systems = (import inputs.systems) ++ [ "armv7l-linux" ];` 8 - systems = import inputs.systems; 7 + # `systems = (inputs.nixpkgs.lib.systems.flakeExposed) ++ [ "armv7l-linux" ];` 8 + systems = inputs.nixpkgs.lib.systems.flakeExposed; 9 9 }
-1
templates/parts/flake.nix
··· 13 13 flake-file.url = "github:vic/flake-file"; 14 14 flake-parts.url = "github:hercules-ci/flake-parts"; 15 15 nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; 16 - systems.url = "github:nix-systems/default"; 17 16 treefmt-nix.url = "github:numtide/treefmt-nix"; 18 17 }; 19 18
+8 -8
templates/unflake/unflake.nix
··· 5 5 type = "github"; 6 6 owner = "vic"; 7 7 repo = "flake-file"; 8 - rev = "982bec8f58dc56360df4dbb246f9d3b846e89dfa"; 9 - lastModified = 1771017115; 10 - narHash = "sha256-2Cef4MEBKL8YWe0ZEuEV5U/x4aWz9IM8hrxxiD8X3f4="; 8 + rev = "9d89918faacdbd2ce26d0aa7298da0fecad8b437"; 9 + lastModified = 1771017549; 10 + narHash = "sha256-n68HeYEQJ67hMH2LPI0cERD2pkpNe5dyeOGg11uZ7rc="; 11 11 }; 12 12 unflake_github_vic_import-tree = builtins.fetchTree { 13 13 type = "github"; 14 14 owner = "vic"; 15 15 repo = "import-tree"; 16 - rev = "3c23749d8013ec6daa1d7255057590e9ca726646"; 17 - lastModified = 1763762820; 18 - narHash = "sha256-ZvYKbFib3AEwiNMLsejb/CWs/OL/srFQ8AogkebEPF0="; 16 + rev = "c968d3b54d12cf5d9c13f16f7c545a06c9d1fde6"; 17 + lastModified = 1771045967; 18 + narHash = "sha256-oYO4poyw0Sb/db2PigqugMlDwsvwLg6CSpFrMUWxA3Q="; 19 19 }; 20 20 unflake_tarball_https---channels-nixos-org-nixpkgs-unstable-nixexprs-tar-xz = builtins.fetchTree { 21 21 type = "tarball"; 22 22 url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; 23 - lastModified = 1770843696; 24 - narHash = "sha256-9SFCZkVcpDOV6unH5hVEy4+dB0rxMuUoBnDAO6vshac="; 23 + lastModified = 1771423170; 24 + narHash = "sha256-V/p5M4cAMbu/MJBDn5YABy5QJgCFpsgrnXVVc2Uo5+k="; 25 25 }; 26 26 }; 27 27 universe = rec {