{ lib, pkgs, ... }: { imports = [ ../../../common/cpu/amd ../../../common/cpu/amd/pstate.nix ../../../common/gpu/amd ../../../common/gpu/nvidia ../../../common/pc/laptop ../../../common/pc/laptop/ssd ]; # Use latest LTS kernel for more Raphael fixes boot = lib.mkMerge [ (lib.mkIf (lib.versionOlder pkgs.linux.version "6.6") { kernelPackages = pkgs.linuxPackages_latest; kernelParams = ["amdgpu.sg_display=0"]; }) ]; hardware.nvidia = { modesetting.enable = lib.mkDefault true; powerManagement.enable = lib.mkDefault false; powerManagement.finegrained = lib.mkDefault false; open = lib.mkDefault false; prime = { sync.enable = lib.mkDefault true; amdgpuBusId = "PCI:5:0:0"; nvidiaBusId = "PCI:1:0:0"; }; }; # Avoid issues with modesetting causing blank screen services.xserver.videoDrivers = [ "nvidia" ]; # AMD has better battery life with PPD over TLP: # https://community.frame.work/t/responded-amd-7040-sleep-states/38101/13 services.power-profiles-daemon.enable = lib.mkDefault true; }