nixos/nate-work/default.nix

72 lines
1.5 KiB
Nix

{ config, lib, inputs, outputs, pkgs, system, timeZone, ... }:
let
userName = "nate";
fullName = "Nate Anderson";
email = "nate.anderson@vasion.com";
hostName = "nate-vasion";
desktop = "niri";
gaming = true;
in
{
imports = [
./desktop-configuration.nix
./nixos/hardware-configuration.nix
./nixos/auto-update.nix
];
deskCfg = {
userName = userName;
hostName = hostName;
fullName = fullName;
de = desktop;
installGaming = gaming;
};
# Limit the number of generations to keep
boot.loader.systemd-boot.configurationLimit = 5;
# Systemd initrd for faster boot
boot.initrd.systemd.enable = true;
# Plymouth boot animation
boot.plymouth = {
enable = true;
theme = "rings";
themePackages = with pkgs; [
(adi1090x-plymouth-themes.override {
selected_themes = [ "rings" ];
})
];
};
# Silent boot
boot.consoleLogLevel = 0;
boot.initrd.verbose = false;
boot.kernelParams = [
"quiet"
"splash"
"boot.shell_on_fail"
"loglevel=3"
"rd.systemd.show_status=false"
"rd.udev.log_level=3"
"udev.log_priority=3"
];
boot.loader.timeout = 0;
# Perform garbage collection weekly to maintain low disk usage
nix.gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 14d";
};
autoCfg = {
userName = userName;
};
services.clamav.daemon.enable = true;
services.clamav.scanner.enable = true;
nix.settings.auto-optimise-store = true;
}