From e7e521c4f9dd23a15da56810bc03bca0fccb5f83 Mon Sep 17 00:00:00 2001 From: Jack Boykin Date: Mon, 3 Aug 2026 12:19:07 -0500 Subject: [PATCH] firefox: use ffmpeg 8 for browsers that support it Assisted-by: Claude Code (Claude Fable 5) --- pkgs/applications/networking/browsers/firefox/wrapper.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix index d945a0a3d063..951d09baa4f9 100644 --- a/pkgs/applications/networking/browsers/firefox/wrapper.nix +++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix @@ -12,6 +12,7 @@ ## various stuff that can be plugged in ffmpeg_7, + ffmpeg_8, libxxf86vm, libxxf86dga, libxt, @@ -88,6 +89,11 @@ let let ffmpegSupport = browser.ffmpegSupport or false; + # Firefox dlopens libavcodec by hardcoded soname, so each ffmpeg major needs + # explicit browser support; keep versioned pins here (never the ffmpeg alias) + # and add a tier when a release gains the next ABI. 146 added libavcodec 62 + # (https://bugzilla.mozilla.org/show_bug.cgi?id=1962139), not uplifted to ESR 140. + ffmpegPackage = if lib.versionAtLeast browser.version "146" then ffmpeg_8 else ffmpeg_7; gssSupport = browser.gssSupport or false; alsaSupport = browser.alsaSupport or false; pipewireSupport = browser.pipewireSupport or false; @@ -113,7 +119,7 @@ let ++ lib.optional (cfg.speechSynthesisSupport or true) speechd-minimal ) ++ lib.optional pipewireSupport pipewire - ++ lib.optional ffmpegSupport ffmpeg_7 + ++ lib.optional ffmpegSupport ffmpegPackage ++ lib.optional gssSupport libkrb5 ++ lib.optional useGlvnd libglvnd ++ lib.optionals (cfg.enableQuakeLive or false) [