Update nixpkgs and home-manager
This commit is contained in:
parent
c68a48eb34
commit
3d49672740
87
flake.lock
generated
87
flake.lock
generated
@ -79,22 +79,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_2": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1650374568,
|
|
||||||
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1642700792,
|
"lastModified": 1642700792,
|
||||||
@ -132,11 +116,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1654113405,
|
"lastModified": 1656169755,
|
||||||
"narHash": "sha256-VpK+0QaWG2JRgB00lw77N9TjkE3ec0iMYIX1TzGpxa4=",
|
"narHash": "sha256-Nlnm4jeQWEGjYrE6hxi/7HYHjBSZ/E0RtjCYifnNsWk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "ac2287df5a2d6f0a44bbcbd11701dbbf6ec43675",
|
"rev": "4a3d01fb53f52ac83194081272795aa4612c2381",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -147,20 +131,17 @@
|
|||||||
},
|
},
|
||||||
"home-manager-unstable": {
|
"home-manager-unstable": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs-unstable"
|
"nixpkgs-unstable"
|
||||||
],
|
],
|
||||||
"nmd": "nmd",
|
|
||||||
"nmt": "nmt",
|
|
||||||
"utils": "utils_2"
|
"utils": "utils_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655381586,
|
"lastModified": 1657396086,
|
||||||
"narHash": "sha256-2IrSYYjxoT+iOihSiH0Elo9wzjbHjDSH+qPvI5BklCs=",
|
"narHash": "sha256-4cQ6hEuewWoFkTBlu211JGxPQQ1Zyli8oEq1cu7cVeA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1de492f6f8e9937c822333739c5d5b20d93bf49f",
|
"rev": "c645cc9f82c7753450d1fa4d1bc73b64960a9d7a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -186,11 +167,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-mine": {
|
"nixpkgs-mine": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655405439,
|
"lastModified": 1657454943,
|
||||||
"narHash": "sha256-ijVfodPEpcBwOqQcirEMqmDHn5B4nSGP7E7JMjt5dD8=",
|
"narHash": "sha256-QVLg+HI/frwiz5KQkK9ZCcPV3qi3AZc1PLgKdjcwiSg=",
|
||||||
"owner": "devplayer0",
|
"owner": "devplayer0",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "6c8d1a23aec7d56ec3b1cb3186499b9b5e112466",
|
"rev": "7c2a9351cd70040550a67766e3be83e029edf521",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -202,11 +183,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-mine-stable": {
|
"nixpkgs-mine-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655405424,
|
"lastModified": 1657454980,
|
||||||
"narHash": "sha256-vSA7qvLOfhNCl6BGEaU4sdhWznvScaHVl4X6nI7dDds=",
|
"narHash": "sha256-sZ3VGlnbv/VSZOCQ6POK71PM6Af3lkYAW2ep0W1OYF0=",
|
||||||
"owner": "devplayer0",
|
"owner": "devplayer0",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "15bfe94e7299b480148676778ac2f19714c45799",
|
"rev": "0c9ac96ae3e8fa14eaedb9d12111a6c37ef34349",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -218,11 +199,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655278232,
|
"lastModified": 1657296039,
|
||||||
"narHash": "sha256-H6s7tnHYiDKFCcLADS4sl1sUq0dDJuRQXCieguk/6SA=",
|
"narHash": "sha256-Ghh39+aS+pw5sTP/ZO8VIKE6sBhMadDaQZtf+3yu4Vc=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "8b538fcb329a7bc3d153962f17c509ee49166973",
|
"rev": "71d7a4c037dc4f3e98d5c4a81b941933cf5bf675",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -233,11 +214,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1655306633,
|
"lastModified": 1657265485,
|
||||||
"narHash": "sha256-nv4FfWWV/dEelByjXJtJkoDPOHIsKfLq50RN3Hqq5Yk=",
|
"narHash": "sha256-PUQ9C7mfi0/BnaAUX2R/PIkoNCb/Jtx9EpnhMBNrO/o=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b1957596ff1c7aa8c55c4512b7ad1c9672502e8e",
|
"rev": "b39924fc7764c08ae3b51beef9a3518c414cdb7d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -246,38 +227,6 @@
|
|||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nmd": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1653339422,
|
|
||||||
"narHash": "sha256-8nc7lcYOgih3YEmRMlBwZaLLJYpLPYKBlewqHqx8ieg=",
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmd",
|
|
||||||
"rev": "9e7a20e6ee3f6751f699f79c0b299390f81f7bcd",
|
|
||||||
"type": "gitlab"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmd",
|
|
||||||
"type": "gitlab"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nmt": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1648075362,
|
|
||||||
"narHash": "sha256-u36WgzoA84dMVsGXzml4wZ5ckGgfnvS0ryzo/3zn/Pc=",
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmt",
|
|
||||||
"rev": "d83601002c99b78c89ea80e5e6ba21addcfe12ae",
|
|
||||||
"type": "gitlab"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "rycee",
|
|
||||||
"repo": "nmt",
|
|
||||||
"type": "gitlab"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"agenix": "agenix",
|
"agenix": "agenix",
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
{ lib, hmFlakes, inputs, pkgs', config, ... }:
|
{ lib, hmFlakes, inputs, pkgs', config, ... }:
|
||||||
let
|
let
|
||||||
inherit (builtins) head tail mapAttrs attrValues;
|
inherit (builtins) head tail mapAttrs attrValues;
|
||||||
inherit (lib) flatten optional mkOption mkDefault mkOptionType;
|
inherit (lib) flatten optional optionalAttrs mkOption mkDefault mkOptionType mkIf;
|
||||||
inherit (lib.my) homeStateVersion mkOpt' commonOpts inlineModule' applyAssertions;
|
inherit (lib.my) homeStateVersion' homeStateVersion mkOpt' commonOpts inlineModule' applyAssertions;
|
||||||
|
|
||||||
cfg = config.home-manager;
|
cfg = config.home-manager;
|
||||||
|
|
||||||
@ -10,12 +10,14 @@ let
|
|||||||
config',
|
config',
|
||||||
defs,
|
defs,
|
||||||
}:
|
}:
|
||||||
|
let
|
||||||
|
# TODO: Remove this backwards compatibility when 22.11 becomes stable
|
||||||
|
# https://github.com/nix-community/home-manager/blob/master/docs/release-notes/rl-2211.adoc
|
||||||
|
newCfgFn = (homeStateVersion' config'.home-manager) == "22.11";
|
||||||
|
modArg = if newCfgFn then "modules" else "extraModules";
|
||||||
|
in
|
||||||
# homeManagerConfiguration doesn't allow us to set lib directly (inherits from passed pkgs)
|
# homeManagerConfiguration doesn't allow us to set lib directly (inherits from passed pkgs)
|
||||||
hmFlakes.${config'.home-manager}.lib.homeManagerConfiguration {
|
hmFlakes.${config'.home-manager}.lib.homeManagerConfiguration ({
|
||||||
inherit (config') system homeDirectory username;
|
|
||||||
# Pull the first def as `configuration` and add any others to `extraModules` (they should end up in the same list
|
|
||||||
# of modules to evaluate anyway)
|
|
||||||
configuration = head defs;
|
|
||||||
# Passing pkgs here doesn't set the global pkgs, just where it'll be imported from (and where the global lib is
|
# Passing pkgs here doesn't set the global pkgs, just where it'll be imported from (and where the global lib is
|
||||||
# derived from). We want home-manager to import pkgs itself so it'll apply config and overlays modularly. Any config
|
# derived from). We want home-manager to import pkgs itself so it'll apply config and overlays modularly. Any config
|
||||||
# and overlays previously applied will be passed on by `homeManagerConfiguration` though. In fact, because of weird
|
# and overlays previously applied will be passed on by `homeManagerConfiguration` though. In fact, because of weird
|
||||||
@ -23,7 +25,7 @@ let
|
|||||||
# TODO: Check if this is fixed in future.
|
# TODO: Check if this is fixed in future.
|
||||||
pkgs = pkgs'.${config'.nixpkgs}.${config'.system} // { config = { }; };
|
pkgs = pkgs'.${config'.nixpkgs}.${config'.system} // { config = { }; };
|
||||||
extraSpecialArgs = { inherit inputs; };
|
extraSpecialArgs = { inherit inputs; };
|
||||||
extraModules = (attrValues cfg.modules) ++ [
|
"${modArg}" = (attrValues cfg.modules) ++ [
|
||||||
{
|
{
|
||||||
warnings = flatten [
|
warnings = flatten [
|
||||||
(optional (config'.nixpkgs != config'.home-manager)
|
(optional (config'.nixpkgs != config'.home-manager)
|
||||||
@ -35,10 +37,20 @@ let
|
|||||||
_module.args = {
|
_module.args = {
|
||||||
pkgs' = mapAttrs (_: p: p.${config'.system}) pkgs';
|
pkgs' = mapAttrs (_: p: p.${config'.system}) pkgs';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
home = mkIf newCfgFn {
|
||||||
|
inherit (config') homeDirectory username;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
(homeStateVersion config'.home-manager)
|
(homeStateVersion config'.home-manager)
|
||||||
] ++ (tail defs);
|
] ++ (if newCfgFn then defs else tail defs);
|
||||||
};
|
} // (optionalAttrs (!newCfgFn) {
|
||||||
|
inherit (config') system homeDirectory username;
|
||||||
|
|
||||||
|
# Pull the first def as `configuration` and add any others to `extraModules` for the old style config (they should
|
||||||
|
# end up in the same list of modules to evaluate anyway)
|
||||||
|
configuration = head defs;
|
||||||
|
}));
|
||||||
|
|
||||||
homeOpts = with lib.types; { ... }@args:
|
homeOpts = with lib.types; { ... }@args:
|
||||||
let
|
let
|
||||||
|
@ -88,11 +88,10 @@ rec {
|
|||||||
then throw "\nFailed assertions:\n${concatStringsSep "\n" (map (x: "- ${x}") failedAssertions)}"
|
then throw "\nFailed assertions:\n${concatStringsSep "\n" (map (x: "- ${x}") failedAssertions)}"
|
||||||
else showWarnings config.warnings res;
|
else showWarnings config.warnings res;
|
||||||
|
|
||||||
|
homeStateVersion' = hmBranch: (if (hmBranch == "stable" || hmBranch == "mine-stable") then "22.05" else "22.11");
|
||||||
homeStateVersion = hmBranch: {
|
homeStateVersion = hmBranch: {
|
||||||
# The flake passes a default setting, but we don't care about that
|
# The flake passes a default setting, but we don't care about that
|
||||||
# Currently don't need any logic here, but we might need to use a newer version later
|
home.stateVersion = mkForce (homeStateVersion' hmBranch);
|
||||||
#home.stateVersion = mkForce (if (hmBranch == "stable" || hmBranch == "mine-stable") then "22.05" else "22.11");
|
|
||||||
home.stateVersion = mkForce "22.05";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
commonOpts = with types; {
|
commonOpts = with types; {
|
||||||
|
Loading…
Reference in New Issue
Block a user