nixcfg/hosts/petalburg/hardware.nix

64 lines
1.5 KiB
Nix
Raw Normal View History

2024-03-01 19:50:36 -05:00
{
2024-04-07 22:16:33 -04:00
config,
inputs,
2024-04-07 22:16:33 -04:00
lib,
modulesPath,
pkgs,
2024-04-07 22:16:33 -04:00
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
inputs.nixos-hardware.nixosModules.common-cpu-intel
inputs.nixos-hardware.nixosModules.common-pc-laptop-ssd
];
2024-03-01 19:50:36 -05:00
boot = {
initrd = {
availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod"];
kernelModules = [];
};
extraModulePackages = [];
kernelModules = ["kvm-intel"];
};
2024-04-05 23:12:46 -04:00
# Intel drivers with accelerated video playback support.
nixpkgs = {
config.packageOverrides = pkgs: {
intel-vaapi-driver =
pkgs.intel-vaapi-driver.override {enableHybridCodec = true;};
};
hostPlatform = lib.mkDefault "x86_64-linux";
2024-04-05 23:12:46 -04:00
};
hardware = {
cpu.intel.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
enableAllFirmware = true;
opengl = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver # LIBVA_DRIVER_NAME=iHD
intel-vaapi-driver # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
libvdpau-va-gl
];
};
sensor.iio.enable = true; # Enable auto-rotate and tablet mode.
2024-04-05 23:12:46 -04:00
};
environment.sessionVariables = {
LIBVA_DRIVER_NAME = "iHD"; # Force intel-media-driver
};
2024-04-05 23:12:46 -04:00
# Save power/better manage heat & fans.
powerManagement.powertop.enable = true;
services.thermald.enable = true;
2024-04-05 23:12:46 -04:00
2024-03-01 19:50:36 -05:00
networking.useDHCP = lib.mkDefault true;
}