nixos/jaci/default.nix

94 lines
2.2 KiB
Nix

{ config, lib, inputs, outputs, pkgs, system, timeZone, ... }:
let
userName = "jaci";
fullName = "Jaci Anderson";
email = "jaci.s.anderson@gmail.com";
hostName = "meowyxlife";
desktop = "niri";
gaming = true;
in
{
imports = [
inputs.nixos-hardware.nixosModules.framework-12-13th-gen-intel
./desktop-configuration.nix
./nixos/hardware-configuration.nix
];
deskCfg = {
userName = userName;
hostName = hostName;
de = desktop;
installGaming = gaming;
};
# Stylix theming - auto-generated light theme from wallpaper
stylix = {
enable = true;
image = ./kiki_background.jpg;
# Auto-generate color scheme from wallpaper
polarity = "light";
# 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.reversal-icon-theme;
light = "Reversal";
dark = "Reversal";
};
# Disable plymouth styling (use default)
targets.plymouth.enable = false;
};
# Limit the number of generations to keep
boot.loader.systemd-boot.configurationLimit = 5;
# Perform garbage collection weekly to maintain low disk usage
nix.gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 21d";
};
# Optimize storage
# You can also manually optimize the store via:
# nix-store --optimise
# Refer to the following link for more details:
# https://nixos.org/manual/nix/stable/command-ref/conf-file.html#conf-auto-optimise-store
nix.settings.auto-optimise-store = true;
}