122 lines
2.5 KiB
Nix
122 lines
2.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;
|
|
de = desktop;
|
|
installGaming = gaming;
|
|
};
|
|
|
|
# Stylix theming - auto-generate color scheme from wallpaper
|
|
stylix = {
|
|
enable = true;
|
|
image = ./wallpaper.png;
|
|
polarity = "dark";
|
|
|
|
# System-wide cursor
|
|
cursor = {
|
|
package = pkgs.bibata-cursors;
|
|
name = "Bibata-Modern-Classic";
|
|
size = 32;
|
|
};
|
|
|
|
# Fonts
|
|
fonts = {
|
|
serif = {
|
|
package = pkgs.lato;
|
|
name = "Lato";
|
|
};
|
|
sansSerif = {
|
|
package = pkgs.lato;
|
|
name = "Lato";
|
|
};
|
|
monospace = {
|
|
package = pkgs.maple-mono.NF;
|
|
name = "Maple Mono NF";
|
|
};
|
|
emoji = {
|
|
package = pkgs.noto-fonts-color-emoji;
|
|
name = "Noto Color Emoji";
|
|
};
|
|
sizes = {
|
|
applications = 12;
|
|
desktop = 10;
|
|
popups = 10;
|
|
terminal = 11;
|
|
};
|
|
};
|
|
|
|
# Icon theme for tray applets (nm-applet, etc.)
|
|
iconTheme = {
|
|
enable = true;
|
|
package = pkgs.papirus-icon-theme;
|
|
light = "Papirus-Light";
|
|
dark = "Papirus-Dark";
|
|
};
|
|
|
|
# Let plymouth use its own theme
|
|
targets.plymouth.enable = false;
|
|
};
|
|
|
|
# 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;
|
|
}
|