From b971f8de8e590e18151a709edf093ee735e090b6 Mon Sep 17 00:00:00 2001 From: volth Date: Sun, 13 Aug 2017 09:28:05 +0000 Subject: [PATCH] set-source-date-epoch-to-latest.sh: ignore generated files set-source-date-epoch-to-latest.sh to ignore files newer than "$NIX_BUILD_TOP/.." (unlike "$NIX_BUILD_TOP" it is root-owned and cannot be touched by nixbld1). --- .../setup-hooks/set-source-date-epoch-to-latest.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/build-support/setup-hooks/set-source-date-epoch-to-latest.sh b/pkgs/build-support/setup-hooks/set-source-date-epoch-to-latest.sh index fe3458cd21e..a2449b2704a 100644 --- a/pkgs/build-support/setup-hooks/set-source-date-epoch-to-latest.sh +++ b/pkgs/build-support/setup-hooks/set-source-date-epoch-to-latest.sh @@ -4,8 +4,8 @@ updateSourceDateEpoch() { # Get the last modification time of all regular files, sort them, # and get the most recent. Maybe we should use # https://github.com/0-wiz-0/findnewest here. - local -a res=($(find "$path" -type f -print0 | xargs -0 -r stat -c '%Y %n' | sort -n | tail -n1)) - local time="${res[0]}" + local -a res=($(find "$path" -type f -not -newer "$NIX_BUILD_TOP/.." -printf '%T@ %p\n' | sort -n | tail -n1)) + local time="${res[0]//\.[0-9]*/}" # remove the fraction part local newestFile="${res[1]}" # Update $SOURCE_DATE_EPOCH if the most recent file we found is newer.