{ ... }: { # T2: align with https://github.com/deqrocks/apple-bce#required-kernel-parameters (suspend stack). # (Older t2linux guidance used s2idle + pcie_ports=compat; deqrocks fork expects deep + auto + pm_async=off.) boot.kernelParams = [ "mem_sleep_default=deep" "intel_iommu=on" "iommu=pt" "pcie_ports=auto" "pm_async=off" # https://wiki.t2linux.org/guides/hybrid-graphics/#enabling-the-igpu — helps some post-suspend black screens. "i915.enable_guc=3" ]; # Hybrid T2 Macs: prefer Intel for display/GL (saves power; avoids broken AMDGPU after resume). # https://wiki.t2linux.org/guides/hybrid-graphics/ boot.extraModprobeConfig = '' options apple-gmux force_igd=y ''; # If the AMD dGPU misbehaves after S3 (Electron apps won’t start, suspend breaks), keep it unloaded. # See https://github.com/deqrocks/apple-bce#notes-for-dgpu-models — drop this list if you need DRI_PRIME # or external displays wired through the dGPU. boot.blacklistedKernelModules = [ "amdgpu" ]; boot.kernelModules = [ "apple-bce" ]; boot.initrd.availableKernelModules = [ "apple-bce" ]; }