Skip to content

handbrake: 1.5.1 -> 1.6.1#212306

Merged
SuperSandro2000 merged 2 commits intoNixOS:masterfrom
laalsaas:handbrake
Feb 7, 2023
Merged

handbrake: 1.5.1 -> 1.6.1#212306
SuperSandro2000 merged 2 commits intoNixOS:masterfrom
laalsaas:handbrake

Conversation

@laalsaas
Copy link
Contributor

@laalsaas laalsaas commented Jan 23, 2023

Fixes #211297

Description of changes
Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.05 Release Notes (or backporting 22.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@ofborg ofborg bot requested review from Anton-Latukha and wmertens January 23, 2023 20:49
@ofborg ofborg bot added 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. labels Jan 23, 2023
@laalsaas laalsaas force-pushed the handbrake branch 2 times, most recently from 8864814 to cf6c32c Compare January 26, 2023 20:43
@laalsaas laalsaas changed the title handbrake: disable sdl2 for ffmpeg used handbrake: 1.5.1 -> 1.6.1 Jan 26, 2023
@uninsane
Copy link
Contributor

this runs fine for me on x86_64-linux (wayland/sway), but the new svt-avt package input added in this patch breaks the aarch64-linux build in a new way:

$ nix build '.#legacyPackages.aarch64-linux.handbrake'
error: Package ‘svt-av1-1.4.1’ in /nix/store/1w97dryirwh60407sg97x521m0aisln4-source/pkgs/tools/video/svt-av1/default.nix:31 is marked as broken, refusing to evaluate.

ffmpeg-full special-cases a few dependencies, presumably to work around platform-specific issues like this:

ffmpeg-full = callPackage ../development/libraries/ffmpeg-full {
    svt-av1 = if stdenv.isAarch64 then null else svt-av1;
    rtmpdump = null; # Prefer the built-in RTMP implementation
    # The following need to be fixed on Darwin
    libjack2 = if stdenv.isDarwin then null else libjack2;
    libmodplug = if stdenv.isDarwin then null else libmodplug;
    libmfx = if stdenv.isDarwin then null else intel-media-sdk;
    libpulseaudio = if stdenv.isDarwin then null else libpulseaudio;
    samba = if stdenv.isDarwin then null else samba;
    inherit (darwin.apple_sdk.frameworks)
      Cocoa CoreServices CoreAudio AVFoundation MediaToolbox
      VideoDecodeAcceleration VideoToolbox;
  };

i guess if you want to ditch it maybe you have to replicate some of that?

@laalsaas
Copy link
Contributor Author

The problem here is that svt-av1 is a dependency of handbrake, not ffmpeg. So setting svt-av1 to null would result in a failing build on aarch64. I haven't been able to figure out if there is a way to build handbrake 1.6.1 without svt-av1.

GGG-KILLER added a commit to GGG-KILLER/nixos-configs that referenced this pull request Jan 29, 2023
@SuperSandro2000
Copy link
Member

If the package now requires svt-avt and that does not work on aarch64-linux that is unfortunate but I don't think we can do anything here unless we find some patch upstream or ask them for help.

Additionaly, use the ffmpeg patches from upstream and bump ffmpeg
version to 5.1.

Fixes NixOS#211297
@laalsaas
Copy link
Contributor Author

laalsaas commented Feb 1, 2023

I agree with Sandro here.

@uninsane svt-av1 was marked as broken 2 years ago, can you try if a new version fixed the issue on aarch64 and nixpkgs just forgot to set broken to false? I don't have aarch64 hardware, so i can't test.

@uninsane
Copy link
Contributor

uninsane commented Feb 1, 2023 via email

@Tungsten842
Copy link
Member

Tungsten842 commented Feb 2, 2023

I agree with Sandro here.

@uninsane svt-av1 was marked as broken 2 years ago, can you try if a new version fixed the issue on aarch64 and nixpkgs just forgot to set broken to false? I don't have aarch64 hardware, so i can't test.

Cross compiling svt-av1 for aarch64 works just fine.

❯ export NIXPKGS_ALLOW_BROKEN=1
❯ nix build nixos\#pkgsCross.aarch64-multiplatform.svt-av1 --impure --print-out-paths
/nix/store/n0kvp195xn02brcsbq7ga3y0cnavwbfh-svt-av1-aarch64-unknown-linux-gnu-1.4.1

It think that you can just remove this:

broken = stdenv.isAarch64; # undefined reference to `cpuinfo_arm_linux_init'

@SuperSandro2000
Copy link
Member

SuperSandro2000 commented Feb 7, 2023

darwin aarch64 is still broken but that might be related to the apple SDK. It didn't work before so that is fine

@SuperSandro2000 SuperSandro2000 merged commit 13ed718 into NixOS:master Feb 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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.

handbrake: cant build its ffmpeg

5 participants