diff --git a/pkgs/by-name/av/av1an-unwrapped/package.nix b/pkgs/by-name/av/av1an-unwrapped/package.nix index e7ed15a35725..e4f31ba85930 100644 --- a/pkgs/by-name/av/av1an-unwrapped/package.nix +++ b/pkgs/by-name/av/av1an-unwrapped/package.nix @@ -1,28 +1,40 @@ { lib, - rustPlatform, + stdenv, fetchFromGitHub, - pkg-config, + fetchpatch, ffmpeg, - nasm, - vapoursynth, libaom, - rav1e, + nasm, nix-update-script, + pkg-config, + rav1e, + rustPlatform, + vapoursynth, }: rustPlatform.buildRustPackage rec { pname = "av1an-unwrapped"; - version = "0.4.3"; + version = "0.4.4"; src = fetchFromGitHub { owner = "master-of-zen"; repo = "av1an"; tag = version; - hash = "sha256-Mb5I+9IBwpfmK1w4LstNHI/qsJKlCuRxgSUiqpwUqF0="; + hash = "sha256-YF+j349777pE+evvXWTo42DQn1CE0jlfKBEXUFTfcb8="; }; - cargoHash = "sha256-IWcSaJoakXSPIdycWIikGSmOk+D4A3aMnJwuiKn8XNY="; + cargoPatches = [ + # TODO: Remove in next version + # Avoids https://github.com/shssoichiro/ffmpeg-the-third/issues/63 + # https://github.com/master-of-zen/Av1an/pull/912 + (fetchpatch { + url = "https://github.com/master-of-zen/Av1an/commit/e6b29a5a624434eb0dc95b7e8aa31ccf624ccb9d.patch"; + hash = "sha256-nFE04hlTzApYafSzgl/XOUdchxEjKvxXy+SKr/d6+0Q="; + }) + ]; + + cargoHash = "sha256-4+JyWymj0yFsXw+7im+ye4rJmkc8nyg+7d1U/MTOerk="; nativeBuildInputs = [ nasm @@ -60,5 +72,7 @@ rustPlatform.buildRustPackage rec { license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ getchoo ]; mainProgram = "av1an"; + # symbol index out of range file '/private/tmp/nix-build-av1an-unwrapped-0.4.4.drv-0/rustcz0anL2/librav1e-ca440893f9248a14.rlib' for architecture x86_64 + broken = stdenv.hostPlatform.system == "x86_64-darwin"; }; } diff --git a/pkgs/by-name/av/av1an/package.nix b/pkgs/by-name/av/av1an/package.nix index 7f7418f793d3..2a7b7c05e527 100644 --- a/pkgs/by-name/av/av1an/package.nix +++ b/pkgs/by-name/av/av1an/package.nix @@ -1,19 +1,21 @@ { lib, - symlinkJoin, - makeBinaryWrapper, + av1an, av1an-unwrapped, ffmpeg, - python3, libaom, - svt-av1, - rav1e, + libvmaf, libvpx, + makeBinaryWrapper, + mkvtoolnix-cli, + python3, + rav1e, + svt-av1, + symlinkJoin, + testers, + vapoursynth, x264, x265, - libvmaf, - vapoursynth, - mkvtoolnix-cli, withAom ? true, # AV1 reference encoder withSvtav1 ? false, # AV1 encoder/decoder (focused on speed and correctness) withRav1e ? false, # AV1 encoder (focused on speed and safety) @@ -27,15 +29,16 @@ # av1an requires at least one encoder assert lib.assertMsg (lib.elem true [ withAom - withSvtav1 withRav1e + withSvtav1 withVpx withX264 withX265 ]) "At least one encoder is required!"; symlinkJoin { - name = "av1an-${av1an-unwrapped.version}"; + pname = "av1an"; + inherit (av1an-unwrapped) version; paths = [ av1an-unwrapped ]; @@ -49,13 +52,13 @@ symlinkJoin { (ffmpeg.override { inherit withVmaf; }) ] ++ lib.optional withAom libaom - ++ lib.optional withSvtav1 svt-av1 + ++ lib.optional withMkvtoolnix mkvtoolnix-cli ++ lib.optional withRav1e rav1e + ++ lib.optional withSvtav1 svt-av1 + ++ lib.optional withVmaf libvmaf ++ lib.optional withVpx libvpx ++ lib.optional withX264 x264 - ++ lib.optional withX265 x265 - ++ lib.optional withVmaf libvmaf - ++ lib.optional withMkvtoolnix mkvtoolnix-cli; + ++ lib.optional withX265 x265; in '' wrapProgram $out/bin/av1an \ @@ -65,11 +68,10 @@ symlinkJoin { ''; passthru = { - # TODO: uncomment when upstream actually bumps CARGO_PKG_VERSION - #tests.version = testers.testVersion { - # package = av1an; - # inherit (av1an-unwrapped) version; - #}; + tests.version = testers.testVersion { + package = av1an; + inherit (av1an-unwrapped) version; + }; }; meta = { @@ -81,6 +83,7 @@ symlinkJoin { license maintainers mainProgram + broken ; }; }