From dfa916a63b0c3e100876347e7d5f20ac36394298 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C2=B7=F0=90=91=91=F0=90=91=B4=F0=90=91=95=F0=90=91=91?= =?UTF-8?q?=F0=90=91=A9=F0=90=91=A4?= Date: Wed, 17 Dec 2025 03:02:13 +0700 Subject: [PATCH] fetchdarcs: add {pre,post}Fetch hooks --- pkgs/build-support/fetchdarcs/builder.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/fetchdarcs/builder.sh b/pkgs/build-support/fetchdarcs/builder.sh index bbcf59ae0885..85ac1eca108a 100644 --- a/pkgs/build-support/fetchdarcs/builder.sh +++ b/pkgs/build-support/fetchdarcs/builder.sh @@ -1,3 +1,5 @@ +runHook preFetch + tagtext="" tagflags="" # Darcs hashes are sha1 (120 bits, 40-character hex) @@ -15,16 +17,22 @@ fi # Repository list may contain ?. No glob expansion for that. set -o noglob +success= for repository in $repositories; do echo "Trying to clone $repository $tagtext into $out …" if darcs clone --lazy $tagflags "$repository" "$out"; then # remove metadata, because it can change rm -rf "$out/_darcs" - exit 0 + success=1 + break fi done set +o noglob -echo "Error: couldn’t clone repository from any mirror" 1>&2 -exit 1 +if [ -z "$success" ]; then + echo "Error: couldn’t clone repository from any mirror" 1>&2 + exit 1 +fi + +runHook postFetch