summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-11-04 21:19:21 +0100
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-11-05 22:47:43 +0100
commit897f516feca20d3f5669b97f88ff653bd1dc6e55 (patch)
tree44257b40a4d89b97f2777172f748d7f13b9cec1d
parentmodules/{nix,nixos-shell,version}: Use the `sources` and `nixpkgs-unstable` (diff)
downloadnixos-config-897f516feca20d3f5669b97f88ff653bd1dc6e55.zip
inputs.nix: Add depuplication rules for nearly all possible ways to fetch nixpkgs
-rw-r--r--inputs.nix150
1 files changed, 69 insertions, 81 deletions
diff --git a/inputs.nix b/inputs.nix
index 132e4df2..f19865c6 100644
--- a/inputs.nix
+++ b/inputs.nix
@@ -3,6 +3,25 @@ let
lanzabooteVersion = "v1.2.0";
+ nixpkgs_override = from_version: to_version: [
+ {
+ when = w_nixpkgs "nixos-${from_version}";
+ set = w_tarball to_version;
+ }
+ {
+ when = w_nixpkgs "nixos-${from_version}-small";
+ set = w_tarball to_version;
+ }
+ {
+ when = w_nixpkgs "nixpkgs-${from_version}";
+ set = w_tarball to_version;
+ }
+ {
+ when = w_nixpkgs "nixpkgs-${from_version}-small";
+ set = w_tarball to_version;
+ }
+ ];
+
w_nixpkgs = ref: {
type = "github";
owner = "nixos";
@@ -21,92 +40,61 @@ let
nixos_stable = "https://channels.nixos.org/nixos-${nixosVersion}-small/nixexprs.tar.zst";
nixos_unstable = "https://channels.nixos.org/nixos-unstable-small/nixexprs.tar.zst";
in {
- _unflake.dedupRules = [
- {
- when = w_nixpkgs "nixos-unstable";
- set = w_tarball nixos_unstable;
- }
- {
- when = w_nixpkgs "nixpkgs-unstable";
- set = w_tarball nixos_unstable;
- }
- {
- when = w_nixpkgs "nixos-unstable-small";
- set = w_tarball nixos_unstable;
- }
- {
- when = w_nixpkgs "nixos-25.05";
- set = w_tarball nixos_stable;
- }
- {
- when = w_nixpkgs "nixos-25.05-small";
- set = w_tarball nixos_stable;
- }
- {
- when = w_nixpkgs "nixos-25.11";
- set = w_tarball nixos_stable;
- }
- {
- when = w_nixpkgs "nixos-25.11-small";
- set = w_tarball nixos_stable;
- }
- {
- when = w_nixpkgs "nixos-26.05";
- set = w_tarball nixos_stable;
- }
- {
- when = w_nixpkgs "nixos-26.05-small";
- set = w_tarball nixos_stable;
- }
- {
- when = {url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst";};
- set = w_tarball nixos_unstable;
- }
+ _unflake.dedupRules =
+ (nixpkgs_override "25.05" nixos_stable)
+ ++ (nixpkgs_override "25.11" nixos_stable)
+ ++ (nixpkgs_override "26.05" nixos_stable)
+ ++ (nixpkgs_override "unstable" nixos_unstable)
+ ++ [
+ {
+ when = {url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst";};
+ set = w_tarball nixos_unstable;
+ }
- # {
- # when = {url = "https://git.foss-syndicate.org/vhack.eu/nix-library";};
- # set = {url = "file:///home/nixos/s/nix-library";};
- # }
+ # {
+ # when = {url = "https://git.foss-syndicate.org/vhack.eu/nix-library";};
+ # set = {url = "file:///home/nixos/s/nix-library";};
+ # }
- {
- when = w_github "nix-community" "home-manager";
- set = {ref = "master";};
- }
+ {
+ when = w_github "nix-community" "home-manager";
+ set = {ref = "master";};
+ }
- {
- when = w_github "edolstra" "flake-compat";
- set = {
- type = "git";
- url = "https://git.lix.systems/lix-project/flake-compat";
- ref = "main";
- };
- }
- {
- when = w_github "nixos" "flake-compat";
- set = {
- type = "git";
- url = "https://git.lix.systems/lix-project/flake-compat";
- ref = "main";
- };
- }
+ {
+ when = w_github "edolstra" "flake-compat";
+ set = {
+ type = "git";
+ url = "https://git.lix.systems/lix-project/flake-compat";
+ ref = "main";
+ };
+ }
+ {
+ when = w_github "nixos" "flake-compat";
+ set = {
+ type = "git";
+ url = "https://git.lix.systems/lix-project/flake-compat";
+ ref = "main";
+ };
+ }
- {
- when = w_github "nix-systems" "default";
- set = {ref = "main";};
- }
- {
- when = w_github "nix-systems" "x86_64-linux";
- set = {
- repo = "default";
- ref = "main";
- };
- }
+ {
+ when = w_github "nix-systems" "default";
+ set = {ref = "main";};
+ }
+ {
+ when = w_github "nix-systems" "x86_64-linux";
+ set = {
+ repo = "default";
+ ref = "main";
+ };
+ }
- {
- when = w_github "numtide" "treefmt-nix";
- set = {ref = "main";};
- }
- ];
+ {
+ when = w_github "numtide" "treefmt-nix";
+ set = {ref = "main";};
+ }
+ ];
# Actual inputs
agenix.url = "github:ryantm/agenix/main";