diff --git a/common/gpu/intel/default.nix b/common/gpu/intel/default.nix index 51a8cfc..2c7216b 100644 --- a/common/gpu/intel/default.nix +++ b/common/gpu/intel/default.nix @@ -22,7 +22,7 @@ }; computeRuntime = lib.mkOption { - description = "intel-compute-runtime variant to use"; + description = "intel-compute-runtime variant to use (legacy for Gen8–11, default for Gen12+)"; type = lib.types.enum [ "default" "legacy" @@ -30,6 +30,15 @@ default = "default"; }; + mediaRuntime = lib.mkOption { + description = "Intel media runtime to use (Media SDK for Gen8–11, OneVPL for Gen12+)"; + type = lib.types.enum [ + "vpl-gpu-rt" + "intel-media-sdk" + ]; + default = "vpl-gpu-rt"; + }; + vaapiDriver = lib.mkOption { description = "Intel VAAPI driver to use (use null to use both)"; type = lib.types.nullOr ( @@ -71,7 +80,11 @@ pkgs.intel-compute-runtime-legacy1 else pkgs.intel-compute-runtime; - vpl-gpu-rt = pkgs.vpl-gpu-rt or pkgs.onevpl-intel-gpu; + intel-media-runtime = + if cfg.mediaRuntime == "vpl-gpu-rt" then + pkgs.vpl-gpu-rt or pkgs.onevpl-intel-gpu + else + pkgs.intel-media-sdk; in { boot.initrd.kernelModules = lib.optionals cfg.loadInInitrd [ cfg.driver ]; @@ -82,7 +95,7 @@ ++ lib.optionals useIntelMediaDriver [ intel-media-driver intel-compute-runtime - vpl-gpu-rt + intel-media-runtime ]; hardware.graphics.extraPackages32 =