From df8b6728a8e93cd97dccb1cbc9ab269c3e46d4e6 Mon Sep 17 00:00:00 2001 From: Graham Christensen Date: Sun, 3 Feb 2019 21:36:59 -0500 Subject: [PATCH] perl: make reproducible Perl likes to capture impure data, needlessly. - Configure time (cf_time): make 1 second past epoch - Target system (uname): use less uname information --- pkgs/development/interpreters/perl/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/perl/default.nix b/pkgs/development/interpreters/perl/default.nix index 5e8f5e2d59b..ecec2f11fc8 100644 --- a/pkgs/development/interpreters/perl/default.nix +++ b/pkgs/development/interpreters/perl/default.nix @@ -88,7 +88,10 @@ let enableParallelBuilding = !crossCompiling; - preConfigure = optionalString (!crossCompiling) '' + preConfigure = '' + substituteInPlace ./Configure --replace '`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`' 'Thu Jan 1 00:00:01 UTC 1970' + substituteInPlace ./Configure --replace '$uname -a' '$uname --kernel-name --machine --operating-system' + '' + optionalString (!crossCompiling) '' configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" '' + optionalString (stdenv.isAarch32 || stdenv.isMips) '' configureFlagsArray=(-Dldflags="-lm -lrt")