diff --git a/pkgs/applications/version-management/git/default.nix b/pkgs/applications/version-management/git/default.nix index a950be71fed2..1b4f736ed63f 100644 --- a/pkgs/applications/version-management/git/default.nix +++ b/pkgs/applications/version-management/git/default.nix @@ -20,6 +20,7 @@ , gzip # needed at runtime by gitweb.cgi , withSsh ? false , sysctl +, deterministic-host-uname # trick Makefile into targeting the host platform when cross-compiling , doInstallCheck ? !stdenv.hostPlatform.isDarwin # extremely slow on darwin , tests }: @@ -84,7 +85,7 @@ stdenv.mkDerivation (finalAttrs: { done ''; - nativeBuildInputs = [ gettext perlPackages.perl makeWrapper pkg-config ] + nativeBuildInputs = [ deterministic-host-uname gettext perlPackages.perl makeWrapper pkg-config ] ++ lib.optionals withManual [ asciidoc texinfo xmlto docbook2x docbook_xsl docbook_xml_dtd_45 libxslt ]; buildInputs = [ curl openssl zlib expat cpio (if stdenv.hostPlatform.isFreeBSD then libiconvReal else libiconv) bash ] @@ -130,8 +131,7 @@ stdenv.mkDerivation (finalAttrs: { # acceptable version. # # See https://github.com/Homebrew/homebrew-core/commit/dfa3ccf1e7d3901e371b5140b935839ba9d8b706 - ++ lib.optional stdenv.hostPlatform.isDarwin "TKFRAMEWORK=/nonexistent" - ++ lib.optional (stdenv.hostPlatform.isFreeBSD && stdenv.hostPlatform != stdenv.buildPlatform) "uname_S=FreeBSD"; + ++ lib.optional stdenv.hostPlatform.isDarwin "TKFRAMEWORK=/nonexistent"; disallowedReferences = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ stdenv.shellPackage diff --git a/pkgs/build-support/deterministic-uname/default.nix b/pkgs/build-support/deterministic-uname/default.nix index 9efaa2558bfb..1a4e0a0f089b 100644 --- a/pkgs/build-support/deterministic-uname/default.nix +++ b/pkgs/build-support/deterministic-uname/default.nix @@ -31,7 +31,7 @@ substituteAll { then "GNU/Linux" else if forPlatform.isDarwin then "Darwin" # darwin isn't in host-os.m4 so where does this come from? - else if stdenv.buildPlatform.isFreeBSD + else if forPlatform.isFreeBSD then "FreeBSD" else "unknown";