Skip to content

Comments

ffmpeg: default to ffmpeg_4#89264

Merged
jonringer merged 2 commits intoNixOS:masterfrom
doronbehar:ffmpeg=4
Jun 12, 2020
Merged

ffmpeg: default to ffmpeg_4#89264
jonringer merged 2 commits intoNixOS:masterfrom
doronbehar:ffmpeg=4

Conversation

@doronbehar
Copy link
Contributor

@doronbehar doronbehar commented May 31, 2020

Motivation for this change

Libraries without a version suffix should point to their latest version upstream! See https://discourse.nixos.org/t/nixpkgs-policy-regarding-libraries-available-in-multiple-versions/7026

This PR intends to make ffmpeg point to ffmpeg4. To make the review easier, I renamed the inputs where necessary for all derivations that used ffmpeg (without a version suffix) and as seen by the PR's labels, ofborg didn't detect any paths changed, besides of course ffmpeg itself.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@ofborg ofborg bot added 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 501-1000 This PR causes many rebuilds on Linux and should normally target the staging branches. labels May 31, 2020
@doronbehar
Copy link
Contributor Author

@GrahamcOfBorg eval

@ofborg ofborg bot added 6.topic: haskell General-purpose, statically typed, purely functional programming language 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: qt/kde Object-oriented framework for GUI creation 2.status: merge conflict This PR has merge conflicts with the target branch labels Jun 7, 2020
@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Jun 7, 2020
@doronbehar doronbehar force-pushed the ffmpeg=4 branch 4 times, most recently from a51fc88 to 1267463 Compare June 7, 2020 13:16
@ofborg ofborg bot added 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. and removed 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 501-1000 This PR causes many rebuilds on Linux and should normally target the staging branches. labels Jun 7, 2020
@ofborg ofborg bot added 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Jun 7, 2020
@doronbehar doronbehar marked this pull request as ready for review June 7, 2020 14:05
After making `ffmpeg` point to the latest `ffmpeg_4`, all packages that
used `ffmpeg` without requiring a specific version now use ffmpeg_3
explicitly so they shouldn't change.
Copy link
Contributor

@AluisioASG AluisioASG left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As far as I can tell, r128gain works with ffmpeg 4. Should we change it ourselves back when we update our packages?

@doronbehar
Copy link
Contributor Author

As far as I can tell, r128gain works with ffmpeg 4. Should we change it ourselves back when we update our packages?

If you've meant that you should do that in a separate PR then yes, but I don't want to do include this change in this PR. The goal is to reduce the scope as much as possible as it's hard enough to get such a change in Nixpkgs (not to mention the amount of time it took me to s/ffmpeg/ffmpeg_3/g in all the files in a way that ofborg won't detect changes).

The general idea, is that when a package maintainer will come to edit their package expression, it will hopefully come to their attention that they use an old version of ffmpeg as an input.

@AluisioASG
Copy link
Contributor

That's what I wanted to know, thank you.

Copy link
Contributor

@jonringer jonringer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

diff and package set difference LGTM

[1 built, 1 copied (1.1 MiB), 0.2 MiB DL]
https://github.com/NixOS/nixpkgs/pull/89264
1 package built:
ffmpeg

@jonringer
Copy link
Contributor

jonringer commented Jun 12, 2020

this PR has been open for 12 days, which I think was ample time for people to voice any strong opposition to this

@doronbehar
Copy link
Contributor Author

🎉 Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: haskell General-purpose, statically typed, purely functional programming language 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: qt/kde Object-oriented framework for GUI creation 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants