config/hardware/gpu/intel.nix

50 lines
1.7 KiB
Nix
Raw Normal View History

2023-02-25 04:39:30 +01:00
{ config, pkgs, lib, ... }:
2024-12-24 00:37:33 +01:00
let
extraPackages = with pkgs; [
mesa.drivers
intel-media-driver
# not added due to collision
# https://github.com/NixOS/nixos-hardware/issues/1170
#(if (lib.versionOlder (lib.versions.majorMinor lib.version) "23.11")
# then vaapiIntel
# else intel-vaapi-driver)
vaapiVdpau
libvdpau-va-gl
intel-ocl
intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in)
(pkgs.nvtopPackages.intel or pkgs.nvtop-intel)
];
in
2024-10-30 23:18:53 +01:00
lib.mkMerge [
2023-02-25 04:39:30 +01:00
{
# enable opengl (headless)
2023-03-03 02:24:07 +01:00
# https://github.com/NixOS/nixpkgs/blob/nixos-22.11/pkgs/development/libraries/ffmpeg/generic.nix
# https://github.com/NixOS/nixpkgs/blob/nixos-22.11/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
2024-01-10 23:49:21 +01:00
# https://nixos.wiki/wiki/Accelerated_Video_Playback
2023-03-03 02:24:07 +01:00
nixpkgs.config.openglSupport = true; # why is this not set by hardware.opengl.enable ?
2023-03-03 21:42:29 +01:00
nixpkgs.config.vaapiSupport = true;
2023-03-03 02:24:07 +01:00
nixpkgs.config.libaomSupport = true;
2023-03-03 21:42:29 +01:00
nixpkgs.config.vdpauSupport = true; # intel
nixpkgs.config.libmfxSupport = true; # intel
2023-03-03 02:24:07 +01:00
2024-01-10 23:49:21 +01:00
nixpkgs.config.packageOverrides = pkgs: {
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
intel-vaapi-driver = pkgs.intel-vaapi-driver.override { enableHybridCodec = true; };
};
2024-10-30 23:18:53 +01:00
}
(lib.optionalAttrs (lib.versionOlder (lib.versions.majorMinor lib.version) "24.11") {
2023-06-24 14:48:53 +02:00
hardware.opengl.driSupport = true;
2024-12-24 00:37:33 +01:00
hardware.opengl.enable = true;
hardware.opengl.extraPackages = extraPackages;
2024-10-30 23:18:53 +01:00
})
2024-12-24 00:37:33 +01:00
(lib.optionalAttrs (lib.versionAtLeast (lib.versions.majorMinor lib.version) "24.11") {
hardware.graphics.enable = true;
hardware.graphics.extraPackages = extraPackages;
})
2024-10-30 23:18:53 +01:00
]