summaryrefslogtreecommitdiff
path: root/pkgs/development/python-modules/python-mapnik/python-mapnik_std_optional.patch
diff options
context:
space:
mode:
authorAtemu <atemu.main@gmail.com>2024-03-13 19:15:21 +0100
committerAtemu <atemu.main@gmail.com>2024-03-14 14:02:31 +0100
commitec34e3d7407c7a0f5054277941f6cb7cb41002a1 (patch)
treeefeb0d4ac400f5082d7ef24802fc5377d1dcc27b /pkgs/development/python-modules/python-mapnik/python-mapnik_std_optional.patch
parent883295650adf2b7b718a2461261809182de7d4b0 (diff)
ffmpeg: make version a regular parameter and use callPackage pattern
This is (to my knowledge) a novel pattern that is similar to how callPackages (note the s) is used. Whereas callPackages would try to make the arguments of default.nix overrideable, this instead exposes the individual packages' arguments. This pattern is a lot more robust than the custom import pattern I had implemented here before. It also moves the implementation detail out of all-packages which is great. Making the version part of the interface allows overriders to declare a different ABI. Doing so via overrideAttrs would not affect the flags in the arguments; effectively retaining the overridden package's ABI. See https://github.com/NixOS/nixpkgs/issues/280645 for an instance of that. By overriding the arguments using ffmpeg.override { version = "..."; ... } the ABI will now be overridden as expected. This means you could theoretically turn ffmpeg_5-full into ffmpeg_4-headless by overriding it with { version = "4.4.4"; hash = ...; ffmpegVariant = "headless"; } Having these implicit parameters be explicit parameters feels a lot cleaner and neater to work with.
Diffstat (limited to 'pkgs/development/python-modules/python-mapnik/python-mapnik_std_optional.patch')
0 files changed, 0 insertions, 0 deletions