1 { pkgs, lib, config, ... }:
10 nixpkgs.hostPlatform = {
11 system = "x86_64-linux";
12 config = "x86_64-unknown-linux-gnu";
15 boot.kernelModules = [
18 boot.extraModulePackages = [
22 boot.initrd.kernelModules = [
27 "nvme" # NVME M.2 disk
31 boot.initrd.availableKernelModules = [
34 environment.systemPackages = [
37 environment.variables = {
38 VDPAU_DRIVER = mkIf config.hardware.opengl.enable (mkDefault "va_gl");
41 hardware.cpu.intel.updateMicrocode = mkDefault config.hardware.enableRedistributableFirmware;
42 hardware.opengl.extraPackages = [
43 pkgs.intel-media-driver # LIBVA_DRIVER_NAME=iHD
44 # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
45 (if (versionOlder (versions.majorMinor version) "23.11") then pkgs.vaapiIntel else pkgs.intel-vaapi-driver)
49 hardware.trackpoint.enable = mkDefault true;
50 hardware.trackpoint.emulateWheel = mkDefault config.hardware.trackpoint.enable;
52 services.fwupd.enable = true;
53 services.upower.enable = true;
54 services.xserver.libinput.enable = mkDefault true;