2023-11-20 09:24:27 -05:00
|
|
|
{ lib, pkgs, ... }: {
|
2023-11-01 13:55:37 -04:00
|
|
|
imports = [ ../../../../common/gpu/nvidia/prime.nix ];
|
2023-09-28 05:31:15 -04:00
|
|
|
|
2023-11-20 09:35:37 -05:00
|
|
|
#D-Bus service to check the availability of dual-GPU
|
|
|
|
services.switcherooControl.enable = lib.mkDefault true;
|
|
|
|
|
2023-11-01 13:55:37 -04:00
|
|
|
hardware = {
|
2024-06-21 09:44:42 -04:00
|
|
|
graphics = {
|
|
|
|
enable = lib.mkDefault true;
|
|
|
|
enable32Bit = lib.mkDefault true;
|
|
|
|
extraPackages = with pkgs; [ intel-media-driver intel-compute-runtime ];
|
|
|
|
};
|
2023-11-01 13:55:37 -04:00
|
|
|
nvidia = {
|
|
|
|
prime = {
|
|
|
|
# Bus ID of the Intel GPU.
|
|
|
|
intelBusId = lib.mkDefault "PCI:0:2:0";
|
|
|
|
# Bus ID of the NVIDIA GPU.
|
|
|
|
nvidiaBusId = lib.mkDefault "PCI:1:0:0";
|
|
|
|
};
|
2023-11-20 09:24:27 -05:00
|
|
|
powerManagement = {
|
|
|
|
# Enable NVIDIA power management.
|
|
|
|
enable = lib.mkDefault true;
|
|
|
|
|
|
|
|
# Enable dynamic power management.
|
|
|
|
finegrained = lib.mkDefault true;
|
|
|
|
};
|
2023-11-01 13:55:37 -04:00
|
|
|
};
|
2023-09-28 05:31:15 -04:00
|
|
|
};
|
|
|
|
}
|