Better nix flake configuration

This commit is contained in:
Filippo Berto 2022-10-04 14:44:56 +02:00
parent 4627af9181
commit 4fca5c8cb1
No known key found for this signature in database
GPG key ID: FE98AE5EC52B1056
6 changed files with 22 additions and 48 deletions

View file

@ -257,11 +257,6 @@ with lib; {
''; '';
# nixpkgs.config.allowUnfree = true; # nixpkgs.config.allowUnfree = true;
# nix = {
# package = pkgs.nixFlakes;
# extraOptions = optionalString (config.nix.package == pkgs.nixFlakes)
# "experimental-features = nix-command flakes";
# };
# system.autoUpgrade = { # system.autoUpgrade = {
# enable = true; # enable = true;

34
flake.lock generated
View file

@ -41,7 +41,9 @@
"flake-utils": [ "flake-utils": [
"flake-utils" "flake-utils"
], ],
"nixpkgs": "nixpkgs", "nixpkgs": [
"nixpkgs-u"
],
"pre-commit-hooks": "pre-commit-hooks" "pre-commit-hooks": "pre-commit-hooks"
}, },
"locked": { "locked": {
@ -75,16 +77,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1653931853, "lastModified": 1663760840,
"narHash": "sha256-O3wncIouj9x7gBPntzHeK/Hkmm9M1SGlYq7JI7saTAE=", "narHash": "sha256-ym5Iycs5H4cOaLfE2/vC0tsLp8XuBJQIHGV8/uXSy8M=",
"owner": "nixos", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "f1c167688a6f81f4a51ab542e5f476c8c595e457", "rev": "9bdbbaa634aa666eb6a27096bdcb991c59181244",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "NixOS",
"ref": "nixos-unstable", "ref": "release-22.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -105,22 +107,6 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": {
"locked": {
"lastModified": 1663760840,
"narHash": "sha256-ym5Iycs5H4cOaLfE2/vC0tsLp8XuBJQIHGV8/uXSy8M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9bdbbaa634aa666eb6a27096bdcb991c59181244",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "release-22.05",
"repo": "nixpkgs",
"type": "github"
}
},
"pre-commit-hooks": { "pre-commit-hooks": {
"inputs": { "inputs": {
"flake-utils": [ "flake-utils": [
@ -175,7 +161,7 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"nix-rice": "nix-rice", "nix-rice": "nix-rice",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs",
"nixpkgs-u": "nixpkgs-u", "nixpkgs-u": "nixpkgs-u",
"pre-commit-hooks": "pre-commit-hooks_2", "pre-commit-hooks": "pre-commit-hooks_2",
"tex2nix": "tex2nix" "tex2nix": "tex2nix"

View file

@ -20,7 +20,7 @@
nix-rice = { nix-rice = {
url = "github:bertof/nix-rice"; url = "github:bertof/nix-rice";
inputs = { inputs = {
inxpkgs.follows = "nixpkgs-u"; nixpkgs.follows = "nixpkgs-u";
flake-utils.follows = "flake-utils"; flake-utils.follows = "flake-utils";
}; };
}; };
@ -86,6 +86,13 @@
}; };
pkgs = s: import nixpkgs (nixpkgsSettings s); pkgs = s: import nixpkgs (nixpkgsSettings s);
pkgs-u = s: import nixpkgs-u (nixpkgsSettings s); pkgs-u = s: import nixpkgs-u (nixpkgsSettings s);
nixModule = system: { pkgs, ... }: {
nixpkgs = nixpkgsSettings { inherit system; };
nix = {
package = pkgs.unstable.nixVersions.stable;
extraOptions = "experimental-features = nix-command flakes";
};
};
homeManagerSettings = { homeManagerSettings = {
home-manager = { home-manager = {
useGlobalPkgs = true; useGlobalPkgs = true;
@ -126,7 +133,7 @@
odinIntelBuilder = { extraModules ? [ ] }: odinIntelBuilder = { extraModules ? [ ] }:
nixpkgs.lib.nixosSystem rec { nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [{ nixpkgs = nixpkgsSettings { inherit system; }; }] modules = [ (nixModule system) ]
++ commonBaseModules ++ odinBaseModules ++ odinIntelModules ++ commonBaseModules ++ odinBaseModules ++ odinIntelModules
++ (homeManagerModules { bertof = import ./odin/hm.nix; }) ++ (homeManagerModules { bertof = import ./odin/hm.nix; })
++ extraModules; ++ extraModules;
@ -134,7 +141,7 @@
odinNvidiaBuilder = { extraModules ? [ ] }: odinNvidiaBuilder = { extraModules ? [ ] }:
nixpkgs.lib.nixosSystem rec { nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [{ nixpkgs = nixpkgsSettings { inherit system; }; }] modules = [ (nixModule system) ]
++ commonBaseModules ++ odinBaseModules ++ odinNvidiaModules ++ commonBaseModules ++ odinBaseModules ++ odinNvidiaModules
++ (homeManagerModules { bertof = import ./odin/hm.nix; }) ++ (homeManagerModules { bertof = import ./odin/hm.nix; })
++ extraModules; ++ extraModules;
@ -153,7 +160,7 @@
thorBuilder = { extraModules ? [ ] }: thorBuilder = { extraModules ? [ ] }:
nixpkgs.lib.nixosSystem rec { nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [{ nixpkgs = nixpkgsSettings { inherit system; }; }] modules = [ (nixModule system) ]
++ commonBaseModules ++ thorBaseModules ++ commonBaseModules ++ thorBaseModules
++ (homeManagerModules { bertof = import ./thor/hm.nix; }) ++ (homeManagerModules { bertof = import ./thor/hm.nix; })
++ extraModules; ++ extraModules;
@ -168,7 +175,7 @@
lokiBuilder = { extraModules ? [ ] }: lokiBuilder = { extraModules ? [ ] }:
nixpkgs.lib.nixosSystem rec { nixpkgs.lib.nixosSystem rec {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [{ nixpkgs = nixpkgsSettings { inherit system; }; }] modules = [ (nixModule system) ]
++ commonBaseModules ++ lokiBaseModules ++ commonBaseModules ++ lokiBaseModules
++ (homeManagerModules { bertof = import ./loki/hm.nix; }) ++ (homeManagerModules { bertof = import ./loki/hm.nix; })
++ extraModules; ++ extraModules;

View file

@ -401,11 +401,6 @@ with lib; {
''; '';
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
nix = {
package = pkgs.nixFlakes;
extraOptions = optionalString (config.nix.package == pkgs.nixFlakes)
"experimental-features = nix-command flakes";
};
system.autoUpgrade = { system.autoUpgrade = {
enable = true; enable = true;

View file

@ -285,11 +285,6 @@ with lib; {
steam = pkgs.steam.override { extraPkgs = pkgs: with pkgs; [ icu ]; }; steam = pkgs.steam.override { extraPkgs = pkgs: with pkgs; [ icu ]; };
}; };
}; };
nix = {
package = pkgs.nixFlakes;
extraOptions = lib.optionalString (config.nix.package == pkgs.nixFlakes)
"experimental-features = nix-command flakes";
};
# This value determines the NixOS release from which the default # This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions # settings for stateful data, like file locations and database versions

View file

@ -209,10 +209,6 @@ with lib; {
}; };
# cudaSupport = true; # cudaSupport = true;
}; };
nix = {
package = pkgs.nixFlakes;
extraOptions = "experimental-features = nix-command flakes";
};
system.stateVersion = "21.05"; # Did you read the comment? system.stateVersion = "21.05"; # Did you read the comment?
} }