68 lines
1.3 KiB
Nix
Executable File
68 lines
1.3 KiB
Nix
Executable File
{
|
|
config,
|
|
lib,
|
|
namespace,
|
|
pkgs,
|
|
system,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib.${namespace}) mkOpt;
|
|
cfg = config.${namespace}.system;
|
|
isArm = system == "aarch64-linux";
|
|
in
|
|
{
|
|
options.${namespace}.system = {
|
|
timezone = mkOpt lib.types.str "America/Chicago" "System timezone (e.g. \"America/New_York\").";
|
|
|
|
stateVersion =
|
|
mkOpt lib.types.str "23.11"
|
|
"NixOS state version. Should match the version in use when the system was first installed.";
|
|
};
|
|
|
|
config = {
|
|
environment.systemPackages =
|
|
with pkgs;
|
|
[
|
|
brightnessctl
|
|
dconf
|
|
disko
|
|
kdiskmark
|
|
nil
|
|
nix-output-monitor
|
|
nixos-anywhere
|
|
udisks2
|
|
unzip
|
|
]
|
|
++ (
|
|
if isArm then
|
|
[ ]
|
|
else
|
|
[
|
|
acpilight
|
|
aha
|
|
aspell
|
|
aspellDicts.en
|
|
aspellDicts.en-computers
|
|
aspellDicts.en-science
|
|
ddcui
|
|
ddcutil
|
|
ddccontrol
|
|
ddccontrol-db
|
|
efibootmgr
|
|
memtest86-efi
|
|
memtest86plus
|
|
os-prober
|
|
sbctl
|
|
tpm2-tools
|
|
tpm2-tss
|
|
winetricks
|
|
]
|
|
);
|
|
|
|
time.timeZone = cfg.timezone;
|
|
|
|
system.stateVersion = cfg.stateVersion;
|
|
};
|
|
}
|