{ inputs, config, lib, pkgs, modulesPath, desktop, username, platform, ... }: { imports = [ ./disks.nix ../../common/modules/secureboot.nix ../../common/modules/ssh-luks.nix ../../common/services/openrazer.nix ../../common/services/podman.nix ]; # steam, nvidia-x11, etc nixpkgs.config.allowUnfree = 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; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; 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"; hardware = { opengl = { enable = true; driSupport32Bit = true; driSupport = true; }; nvidia = { open = false; nvidiaSettings = true; modesetting.enable = true; }; }; environment.systemPackages = [ # deployments and development environments inputs.deploy-rs.packages.${platform}.deploy-rs pkgs.distrobox # nVidia gpu options pkgs.gwe pkgs.nvtop-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 ]; # Generic Tailscale configs are in /nixos/common/services/tailscale.nix # Set up the secrets file: sops.secrets."tailscale_keys/nixos-desktop" = { owner = "root"; sopsFile = ../../../secrets/tailscale.yaml; restartUnits = [ "tailscaled.service" "tailscaled-autoconnect.service" ]; }; services.tailscale.authKeyFile = "/run/secrets/tailscale_keys/nixos-desktop"; # networking.firewall.allowedTCPPorts = [ 22 ]; }