graphical/mpv: add useFullFFmpeg option

This commit is contained in:
Elec3137 2026-02-26 14:05:34 -08:00
commit 7e5b6783ba

View file

@ -15,6 +15,17 @@ in
package = lib.mkPackageOption pkgs name { };
useFullFFmpeg = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Use pkgs.ffmpeg-full within mpv, for more media support.
For instance, this makes jxl viewing and screenshots possible.
However, this will (almost certainly) require a local compilation of mpv
'';
};
extraConfig = lib.mkOption {
type = lib.types.lines;
default = ''
@ -44,20 +55,27 @@ in
config = lib.mkIf cfg.enable {
environment.systemPackages = [
(cfg.package.override {
extraMakeWrapperArgs = [
"--add-flags"
"--config-dir=${
pkgs.symlinkJoin {
inherit name;
paths = [
(pkgs.writeTextDir "${name}.conf" cfg.extraConfig)
(pkgs.writeTextDir "input.conf" cfg.extraInputConf)
];
}
}"
];
})
(
cfg.package.override {
extraMakeWrapperArgs = [
"--add-flags"
"--config-dir=${
pkgs.symlinkJoin {
inherit name;
paths = [
(pkgs.writeTextDir "${name}.conf" cfg.extraConfig)
(pkgs.writeTextDir "input.conf" cfg.extraInputConf)
];
}
}"
];
}
// lib.optionalAttrs cfg.useFullFFmpeg {
mpv-unwrapped = pkgs.mpv-unwrapped.override {
ffmpeg = pkgs.ffmpeg-full;
};
}
)
];
};
}