{ flake, config, pkgs, lib, ... }: with lib; { imports = with flake.nixosModules.systemProfiles; [ default-locale nfsroot openssh ]; config = { nixpkgs = { system = "x86_64-linux"; externalConfig = { allowUnfree = true; }; }; boot = { initrd = { availableKernelModules = [ "nvme" "ahci" "xhci_pci" "usbhid" "sd_mod" "sr_mod" ]; kernelModules = [ "igb" ]; }; kernelModules = [ "kvm-amd" ]; extraModulePackages = [ ]; plymouth.enable = true; tmp.useTmpfs = true; }; hardware = { enableRedistributableFirmware = true; cpu.amd.updateMicrocode = config.hardware.enableRedistributableFirmware; nvidia = { modesetting.enable = true; powerManagement.enable = true; }; graphics.enable = true; }; networking = { domain = "lan.yggdrasil"; search = [ "lan.yggdrasil" "yggdrasil" ]; hosts = { "127.0.0.1" = [ "eostre.lan.yggdrasil" "eostre" ]; "::1" = [ "eostre.lan.yggdrasil" "eostre" ]; }; firewall.enable = false; nftables = { enable = true; rulesetFile = ./ruleset.nft; }; }; services.resolved = { llmnr = "false"; }; zramSwap.enable = true; system.stateVersion = "22.11"; console.keyMap = "us"; time.hardwareClockInLocalTime = true; environment.systemPackages = with pkgs; [ cifs-utils ]; security.pam.mount = { enable = true; extraVolumes = [ "" "" ]; }; services.displayManager.sddm = { enable = true; wayland.enable = true; settings = { Users.HideUsers = "gkleen"; }; }; services.desktopManager.plasma6.enable = true; services.openssh = { enable = true; startWhenNeeded = true; settings = { PasswordAuthentication = true; KbdInteractiveAuthentication = true; }; }; }; }