From 4cbdf0d1fc1cde13ba9e99173ee83946a2389d81 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 14 Jul 2023 18:07:07 -0700 Subject: [PATCH] fetchsvn: support hash parameter alongside sha256 --- pkgs/build-support/fetchsvn/default.nix | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/fetchsvn/default.nix b/pkgs/build-support/fetchsvn/default.nix index 82dececc124..1a5764b4f61 100644 --- a/pkgs/build-support/fetchsvn/default.nix +++ b/pkgs/build-support/fetchsvn/default.nix @@ -2,7 +2,7 @@ , subversion, glibcLocales, sshSupport ? true, openssh ? null }: -{ url, rev ? "HEAD", md5 ? "", sha256 ? "" +{ url, rev ? "HEAD", md5 ? "", sha256 ? "", hash ? "" , ignoreExternals ? false, ignoreKeywords ? false, name ? null , preferLocalBuild ? true }: @@ -34,6 +34,8 @@ in if md5 != "" then throw "fetchsvn does not support md5 anymore, please use sha256" +else if hash != "" && sha256 != "" then + throw "Only one of sha256 or hash can be set" else stdenvNoCC.mkDerivation { name = name_; @@ -43,9 +45,14 @@ stdenvNoCC.mkDerivation { SVN_SSH = if sshSupport then "${buildPackages.openssh}/bin/ssh" else null; - outputHashAlgo = "sha256"; + outputHashAlgo = if hash != "" then null else "sha256"; outputHashMode = "recursive"; - outputHash = sha256; + outputHash = if hash != "" then + hash + else if sha256 != "" then + sha256 + else + lib.fakeSha256; inherit url rev ignoreExternals ignoreKeywords;