{ inputs, outputs, config, lib, pkgs, overlays, modulesPath, ... }: { imports = [ ./configuration.nix ]; boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usbcore" "sd_mod"]; boot.initrd.kernelModules = []; boot.kernelModules = ["kvm-amd" "i2c-dev"]; boot.extraModulePackages = [pkgs.linuxPackages_xanmod_latest.system76-scheduler]; boot.kernelParams = [ "nvidia_drm.modeset=1" "mitigations=off" "acpi_enforce_resources=lax" "preempt=full" "quiet" "loglevel=3" "systemd.show_status=auto" "rd.udev.log_level=3" "vt.global_cursor_default=0" ]; boot.kernelPackages = pkgs.linuxPackages_xanmod_latest; boot.loader.systemd-boot.configurationLimit = 5; boot.loader.efi.canTouchEfiVariables = true; # boot.plymouth.enable = true; boot.supportedFilesystems = ["ntfs"]; security.tpm2.enable = true; networking.useDHCP = lib.mkDefault true; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; environment.sessionVariables = rec { ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=5"; WLR_NO_HARDWARE_CURSORS = "1"; GBM_BACKEND = "nvidia-drm"; NVD_BACKEND = "direct"; __GLX_VENDOR_LIBRARY_NAME = "nvidia"; LIBVA_DRIVER_NAME = "nvidia"; __GL_GSYNC_ALLOWED = "1"; __GL_VRR_ALLOWED = "1"; EDITOR = "hx"; }; virtualisation = { podman = { # package = pkgs.podman-stable; enable = true; dockerCompat = true; defaultNetwork.settings.dns_enabled = true; }; }; services.minidlna = { enable = true; settings = { notify_interval = 120; friendly_name = "PC"; media_dir = ["A,/data/Music/Slsk"]; }; }; services.xserver.videoDrivers = ["nvidia"]; hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.beta; hardware.nvidia.modesetting.enable = true; hardware.nvidia.powerManagement.enable = true; programs.xwayland.enable = true; systemd.services.no-rgb = { wantedBy = ["multi-user.target"]; description = "rgb led turn-off-er"; serviceConfig = { Type = "oneshot"; ExecStart = ''${pkgs.openrgb}/bin/openrgb -d "HyperX Fury RGB" -m static -c 000000''; }; }; services.dbus.packages = [ pkgs.linuxPackages_xanmod_latest.system76-scheduler ]; systemd.packages = [ pkgs.linuxPackages_xanmod_latest.system76-scheduler ]; environment.etc = { "system76-scheduler".source = "${pkgs.linuxPackages_xanmod_latest.system76-scheduler}/etc/system76-scheduler"; }; services.hardware.openrgb = { enable = true; motherboard = "amd"; }; hardware.ckb-next.enable = true; environment.systemPackages = with pkgs; [ ckb-next openrgb wl-clipboard wl-clipboard-x11 xclip # system76-scheduler ]; networking.hostName = "quiver"; # Define your hostname. users.users.bolt = { isNormalUser = true; extraGroups = ["wheel"]; # Enable ‘sudo’ for the user. }; fileSystems."/" = { device = "/dev/disk/by-uuid/d227445f-6120-4768-8e1b-011f097505c1"; fsType = "ext4"; }; fileSystems."/boot" = { device = "/dev/disk/by-uuid/6B75-AF9F"; fsType = "vfat"; }; fileSystems."/data" = { device = "/dev/disk/by-uuid/39D4F78C658E8B56"; fsType = "ntfs"; options = ["rw" "uid=1000" "gid=100"]; }; networking.nftables.enable = true; networking.firewall = { allowedUDPPorts = [1900]; allowedTCPPorts = [8200 2234]; }; }