{ config, lib, pkgs, ... }: { options.hardware.intelgpu.loadInInitrd = lib.mkEnableOption (lib.mdDoc "loading `i195` kernelModule at stage 1. (Add `i915` to `boot.initrd.kernelModules`)" ) // { default = true; }; config = lib.mkMerge [ (lib.mkIf config.hardware.intelgpu.loadInInitrd { boot.initrd.kernelModules = [ "i915" ]; }) { environment.variables = { VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl"); }; hardware.opengl.extraPackages = with pkgs; [ (if (lib.versionOlder (lib.versions.majorMinor lib.version) "23.11") then vaapiIntel else intel-vaapi-driver) libvdpau-va-gl intel-media-driver ]; } ]; }