{ inputs, config, lib, pkgs, system, ... }: { imports = [ ./disks.nix ./syncthing.nix ../../common/modules/secureboot.nix # ../../common/modules/yubikey-auth.nix # ../../common/modules/boot.nix ../../common/modules/ssh-luks.nix ../../common/services/openrazer.nix ../../common/services/podman.nix ../../common/services/tailscale-autoconnect.nix ../../common/modules/builder.nix ../../common/modules/hosts.nix ]; #### TEMPORARY TODO #### environment.variables = { MOZ_ENABLE_WAYLAND = 1; NIXOS_OZONE_WL = "1"; # __GL_YIELD = "usleep"; # KWIN_TRIPLE_BUFFER = 1; }; services.displayManager.sddm = { wayland.enable = true; wayland.compositor = "kwin"; enableHidpi = true; }; boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "thunderbolt" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" "acpi_call" ]; boot.extraModulePackages = with config.boot.kernelPackages; [ acpi_call ]; networking.useDHCP = lib.mkDefault true; powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.keyboard.zsa.enable = true; # Set your time zone. time.timeZone = "Asia/Tokyo"; # Set the networking hostname: networking.hostName = "nixos-desktop"; services.xserver.videoDrivers = [ "nvidia" ]; services.hardware = { openrgb = { enable = true; motherboard = "intel"; }; }; hardware = { opengl = { enable = true; }; nvidia = { modesetting.enable = true; forceFullCompositionPipeline = true; nvidiaSettings = true; open = false; }; }; hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.mkDriver { version = "555.58"; sha256_64bit = "sha256-bXvcXkg2kQZuCNKRZM5QoTaTjF4l2TtrsKUvyicj5ew="; sha256_aarch64 = "sha256-7XswQwW1iFP4ji5mbRQ6PVEhD4SGWpjUJe1o8zoXYRE="; openSha256 = "sha256-hEAmFISMuXm8tbsrB+WiUcEFuSGRNZ37aKWvf0WJ2/c="; settingsSha256 = "sha256-vWnrXlBCb3K5uVkDFmJDVq51wrCoqgPF03lSjZOuU8M="; persistencedSha256 = "sha256-lyYxDuGDTMdGxX3CaiWUh1IQuQlkI2hPEs5LI20vEVw="; }; environment.systemPackages = [ # deployments and development environments inputs.deploy-rs.packages.${system}.deploy-rs pkgs.distrobox # nVidia gpu options pkgs.nvtopPackages.nvidia # WINE # support 32-bit only pkgs.wine # support 64-bit only ( pkgs.wine.override { wineBuild = "wine64"; } ) pkgs.wineWowPackages.staging pkgs.winetricks pkgs.wineWowPackages.waylandFull # RGB stuff pkgs.openrgb-with-all-plugins # Other pkgs.android-udev-rules ]; }