New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

handbrake: 1.1.2 -> 1.2.0 #52453

Merged
merged 7 commits into from Jan 11, 2019

Conversation

Projects
None yet
6 participants
@Anton-Latukha
Copy link
Contributor

Anton-Latukha commented Dec 17, 2018

Motivation for this change

Major update, switch from LibAV to FFMpeg & other changes (release notes).
Due to need in HandBrake compilation - nv-codec-headers bringed to top-level scope, and during that updated 8.1.24.2 -> 8.2.15.6.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • 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 nox --run "nox-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)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@Anton-Latukha Anton-Latukha force-pushed the Anton-Latukha:handbrake-1.2 branch 2 times, most recently Dec 25, 2018

@Anton-Latukha Anton-Latukha force-pushed the Anton-Latukha:handbrake-1.2 branch 2 times, most recently Dec 27, 2018

@Anton-Latukha

This comment has been minimized.

Copy link
Contributor

Anton-Latukha commented Dec 27, 2018

Support of LibAV dropped.

Due to HandBrake having a lot of out-of-tree patches: folder.

Many of them seem like a good quality improvements. Some of them go upstream, some not.
It is not possible to track all their patches, and if we do - it would be essentially their bundle in the closure.

Some sort of official internal build instructions are:

  1. https://github.com/HandBrake/HandBrake/blob/master/pkg/linux/flatpak/fr.handbrake.ghb.json
  2. https://github.com/flathub/fr.handbrake.ghb/blob/master/fr.handbrake.ghb.json

External build extructions: https://handbrake.fr/docs/en/1.2.0/developer/build-linux.html

@Anton-Latukha Anton-Latukha changed the title [WIP] handbrake: 1.1.2 -> 1.2.0 handbrake: 1.1.2 -> 1.2.0 Dec 27, 2018

@Anton-Latukha

This comment has been minimized.

Copy link
Contributor

Anton-Latukha commented Dec 27, 2018

I would be happy to go through all major and minor notes about the code of the package.
I want to learn more.

@Anton-Latukha Anton-Latukha force-pushed the Anton-Latukha:handbrake-1.2 branch Dec 27, 2018

@Anton-Latukha

This comment has been minimized.

Copy link
Contributor

Anton-Latukha commented Dec 27, 2018

One of the considerations may be:
Instead of FFMpeg_4: https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/ffmpeg/generic.nix. Since FFMpeg in Nix is:

* THIS IS A MINIMAL BUILD OF FFMPEG, do not include dependencies unless

To use FFMpeg-full: https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/ffmpeg-full/default.nix

FFMpeg-full has more codecs/containers for input and more processing possibilities, which seems sane for the rich video transcoder.

@Anton-Latukha

This comment has been minimized.

Copy link
Contributor

Anton-Latukha commented Dec 27, 2018

Diff of FFMpeg-{full,4} closures is 100mb.

@Anton-Latukha Anton-Latukha force-pushed the Anton-Latukha:handbrake-1.2 branch to e16711b Dec 27, 2018

Anton-Latukha added some commits Dec 27, 2018

handbrake: 1.2.0: updating deps
rm yasm - dropped
rm bzip2, zlib - no needed for build
rm mp4v2, libmkv, mpeg2dec - drop abandonware, HandBrake now uses FFMpeg for that
add nasm, speex, nv-codec-headers - new required deps

@Anton-Latukha Anton-Latukha force-pushed the Anton-Latukha:handbrake-1.2 branch from e16711b to 6ebcbd0 Dec 28, 2018

@nixos-discourse

This comment has been minimized.

Copy link

nixos-discourse commented Jan 2, 2019

This pull request has been mentioned on Nix community. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review-december/1711/7

@FRidh

This comment has been minimized.

Copy link
Member

FRidh commented Jan 2, 2019

@Anton-Latukha

This comment has been minimized.

Copy link
Contributor

Anton-Latukha commented Jan 5, 2019

@MP2E
Updated here handbrake to 1.2.0 requires nv-codec-headers for compilation.
The package was used internally in ffmpeg-full.
I moved the nv-codec-headers to the global NixPkgs file structure and top-level package scope.
Also updated nv-codec-headers 8.1.24.2 -> 8.2.15.6 if I am at it.

@Anton-Latukha

This comment has been minimized.

Copy link
Contributor

Anton-Latukha commented Jan 10, 2019

Everything is done.
It is pretty straight-forward PR.
Please, merge it.

@peterhoeg peterhoeg merged commit a9632dd into NixOS:master Jan 11, 2019

10 checks passed

grahamcofborg-eval ^.^!
Details
grahamcofborg-eval-check-maintainers matching changed paths to changed attrs...
Details
grahamcofborg-eval-check-meta config.nix: checkMeta = true
Details
grahamcofborg-eval-nixos-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./nixos/release.nix -A manual
Details
grahamcofborg-eval-nixos-options nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./nixos/release.nix -A options
Details
grahamcofborg-eval-nixpkgs-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A manual
Details
grahamcofborg-eval-nixpkgs-tarball nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A tarball
Details
grahamcofborg-eval-nixpkgs-unstable-jobset nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A unstable
Details
grahamcofborg-eval-package-list nix-env -qa --json --file .
Details
grahamcofborg-eval-package-list-no-aliases nix-env -qa --json --file . --arg config { allowAliases = false; }
Details

@Anton-Latukha Anton-Latukha deleted the Anton-Latukha:handbrake-1.2 branch Jan 11, 2019

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