Unverified Commit b551ebd0 authored by Sefa Eyeoglu's avatar Sefa Eyeoglu Committed by GitHub
Browse files

av1an: 0.4.3 -> 0.4.4 (#370509)

parents 8f457f0c 9546eca0
Loading
Loading
Loading
Loading
+22 −8
Original line number Diff line number Diff line
{
  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";
  };
}
+22 −19
Original line number Diff line number Diff line
{
  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
      ;
  };
}