nixos-images/nix/installer.nix

47 lines
1.3 KiB
Nix
Raw Normal View History

{
config,
lib,
pkgs,
modulesPath,
...
}:
let
# can be dropped after 23.11 is removed
hasPerlless = builtins.pathExists "${modulesPath}/profiles/perlless.nix";
in
{
# more descriptive hostname than just "nixos"
networking.hostName = lib.mkDefault "nixos-installer";
# We are stateless, so just default to latest.
system.stateVersion = config.system.nixos.version;
# use latest kernel we can support to get more hardware support
boot.kernelPackages =
lib.mkDefault
(pkgs.zfs.override { removeLinuxDRM = pkgs.hostPlatform.isAarch64; }).latestCompatibleLinuxPackages;
2023-12-12 11:10:33 +01:00
boot.zfs.removeLinuxDRM = lib.mkDefault pkgs.hostPlatform.isAarch64;
documentation.enable = false;
2024-01-15 17:03:47 +01:00
environment.systemPackages = [
# for zapping of disko
pkgs.jq
# for copying extra files of nixos-anywhere
pkgs.rsync
];
imports = [
./nix-settings.nix
# reduce closure size by removing perl
] ++ lib.optionals hasPerlless [
"${modulesPath}/profiles/perlless.nix"
# We relax the perl check in perlless.nix as not all images are actually perlless
# and we also want to allow users to install perl if they need it.
{ system.forbiddenDependenciesRegexes = lib.mkForce []; }
];
# Don't add nixpkgs to the image to save space, for our intended use case we don't need it
system.installer.channel.enable = false;
}