{ config, lib, inputs, outputs, pkgs, system, timeZone, ... }:
  let
    userName = "nate";
    fullName = "Nate Anderson";
    email = "nate.anderson@vasion.com";
    hostName = "nate-vasion";
    desktop = "sway";
    gaming = true;
  in
{
  imports = [
      ./desktop-configuration.nix
      ./nixos/hardware-configuration.nix
      ./nixos/auto-update.nix
  ];

  deskCfg = {
      userName = userName;
      hostName = hostName;
      de = desktop;
      installGaming = gaming;
  };

  # 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 14d";
  };

  autoCfg = {
    userName = userName;
  };

  services.clamav.daemon.enable = true;
  services.clamav.scanner.enable = true;

  nix.settings.auto-optimise-store = true;
}
