diff --git a/pkgs/development/tools/misc/hydra/default.nix b/pkgs/development/tools/misc/hydra/default.nix index 7aa1e05a88e..1636ad6dd71 100644 --- a/pkgs/development/tools/misc/hydra/default.nix +++ b/pkgs/development/tools/misc/hydra/default.nix @@ -9,6 +9,9 @@ rev = "79d34ed7c93af2daf32cf44ee0e3e0768f13f97c"; sha256 = "1lql899430137l6ghnhyz0ivkayy83fdr087ck2wq3gf1jv8pccj"; }; + patches = [ + ./hydra-nix-receiveContents.patch + ]; nix = nixFlakes; tests = { diff --git a/pkgs/development/tools/misc/hydra/hydra-nix-receiveContents.patch b/pkgs/development/tools/misc/hydra/hydra-nix-receiveContents.patch new file mode 100644 index 00000000000..61957e2190c --- /dev/null +++ b/pkgs/development/tools/misc/hydra/hydra-nix-receiveContents.patch @@ -0,0 +1,18 @@ +Update for https://github.com/NixOS/nix/commit/faa31f40 + +--- a/src/hydra-queue-runner/nar-extractor.cc ++++ b/src/hydra-queue-runner/nar-extractor.cc +@@ -48,9 +48,9 @@ +- void receiveContents(unsigned char * data, size_t len) override ++ void receiveContents(std::string_view data) override + { + assert(expectedSize); + assert(curMember); + assert(hashSink); +- *curMember->fileSize += len; +- (*hashSink)(data, len); ++ *curMember->fileSize += data.size(); ++ (*hashSink)(data); + if (curMember->contents) { +- curMember->contents->append((char *) data, len); ++ curMember->contents->append(data);