diff options
author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-05-23 18:24:03 +0200 |
---|---|---|
committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2024-05-23 18:24:03 +0200 |
commit | 96bf5aa00bbf2499c47c887b2217570657d0011d (patch) | |
tree | 9f337470fc0d59de834c407e14c1eadf0c059d78 /modules/system/nixpkgs/default.nix | |
parent | refactor(modules/home/pkgs): Readd whilst using the new `pkgs` (diff) | |
download | nixos-config-96bf5aa00bbf2499c47c887b2217570657d0011d.tar.gz nixos-config-96bf5aa00bbf2499c47c887b2217570657d0011d.zip |
refactor(nixpkgs): Configure nixpkgs via the module system
Diffstat (limited to 'modules/system/nixpkgs/default.nix')
-rw-r--r-- | modules/system/nixpkgs/default.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/modules/system/nixpkgs/default.nix b/modules/system/nixpkgs/default.nix new file mode 100644 index 00000000..ca28c7bd --- /dev/null +++ b/modules/system/nixpkgs/default.nix @@ -0,0 +1,40 @@ +{ + lib, + config, + myPkgs, + pkgs, + ... +}: let + cfg = config.soispha.nixpkgs; + + myPkgsOverlay = self: super: myPkgs; +in { + options.soispha.nixpkgs = { + enable = lib.mkEnableOption "Nixpkgs config"; + systemName = lib.mkOption { + description = "The name of the system."; + example = "x86_64-linux"; + type = lib.types.str; + }; + }; + config = { + nixpkgs = lib.mkIf cfg.enable { + hostPlatform = cfg.systemName; + config = { + hostSystem = cfg.systemName; + overlays = [ + myPkgsOverlay + ]; + config = { + # TODO: this fails because of the root tempsize, which should be increased + # contentAddressedByDefault = true; + + allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) [ + "pypemicro" # required by pynitrokey + ]; + }; + }; + }; + }; +} |