From 039308e97946cae07cb8ed361ad2e21bfbeb6975 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20Schr=C3=B6ter?= Date: Sun, 12 Nov 2023 18:57:19 +0100 Subject: [PATCH] mullvad-browser: add support for GPU acceleration Support GPU acceleration for WebRender & VA-API. --- .../browsers/mullvad-browser/default.nix | 35 ++++++++++++++----- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/networking/browsers/mullvad-browser/default.nix b/pkgs/applications/networking/browsers/mullvad-browser/default.nix index 28f8358feb5c..20d01a4bba15 100644 --- a/pkgs/applications/networking/browsers/mullvad-browser/default.nix +++ b/pkgs/applications/networking/browsers/mullvad-browser/default.nix @@ -6,12 +6,9 @@ , makeWrapper , writeText , wrapGAppsHook +, autoPatchelfHook , callPackage -# Common run-time dependencies -, zlib - -# libxul run-time dependencies , atk , cairo , dbus @@ -30,19 +27,30 @@ , mesa , pango , pciutils +, zlib , libnotifySupport ? stdenv.isLinux , libnotify +, waylandSupport ? stdenv.isLinux +, libxkbcommon +, libdrm + +, mediaSupport ? true +, ffmpeg + , audioSupport ? mediaSupport -, pulseaudioSupport ? mediaSupport + +, pipewireSupport ? audioSupport +, pipewire + +, pulseaudioSupport ? audioSupport , libpulseaudio , apulse , alsa-lib -# Media support (implies audio support) -, mediaSupport ? true -, ffmpeg +, libvaSupport ? mediaSupport +, libva # Extra preferences , extraPrefs ? "" @@ -74,7 +82,10 @@ let stdenv.cc.libc zlib ] ++ lib.optionals libnotifySupport [ libnotify ] + ++ lib.optionals waylandSupport [ libxkbcommon libdrm ] + ++ lib.optionals pipewireSupport [ pipewire ] ++ lib.optionals pulseaudioSupport [ libpulseaudio ] + ++ lib.optionals libvaSupport [ libva ] ++ lib.optionals mediaSupport [ ffmpeg ] ); @@ -113,7 +124,13 @@ stdenv.mkDerivation rec { src = sources.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}"); - nativeBuildInputs = [ copyDesktopItems makeWrapper wrapGAppsHook ]; + nativeBuildInputs = [ copyDesktopItems makeWrapper wrapGAppsHook autoPatchelfHook ]; + buildInputs = [ + gtk3 + alsa-lib + dbus-glib + libXtst + ]; preferLocalBuild = true; allowSubstitutes = false;