{ inputs, outputs, config, lib, pkgs, overlays, modulesPath, ... }: { nix.settings = { substituters = ["https://hyprland.cachix.org" "https://nix-community.cachix.org" ]; trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; }; imports = [ ./configuration.nix inputs.hyprland.nixosModules.default ]; 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 = { 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"]; }; }; programs.hyprland = { enable = true; xwayland = { enable = true; hidpi = false; }; nvidiaPatches = true; }; 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''; }; }; # systemd.services."com.system76.Scheduler" = { # wantedBy = ["multi-user.target"]; # description = "the system76 process scheduler"; # serviceConfig = { # Type = "dbus"; # ExecStart = ''${pkgs.system76-scheduler}/bin/system76-scheduler daemon''; # ExecReload = ''${pkgs.system76-scheduler}/bin/system76-scheduler daemon reload''; # BusName = "com.system76.Scheduler"; # }; # }; 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; xdg.portal = { enable = true; wlr = { enable = true; # settings = { # screencast = { # output_name = "DP-1"; # max_fps = 60; # chooser_type = "simple"; # chooser_nvidia = "${pkgs.slurp}/bin/slurp -f %o -or"; # }; # }; }; extraPortals = with pkgs; [ xdg-desktop-portal-gtk ]; }; 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]; }; }