diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix index 40afb4353318..8761fc9fbcaf 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -8,6 +8,7 @@ , svnSupport, subversionClient, perlLibs, smtpPerlLibs , perlSupport ? true , nlsSupport ? true +, osxkeychainSupport ? stdenv.isDarwin , guiSupport , withManual ? true , pythonSupport ? true @@ -19,6 +20,7 @@ , gzip # needed at runtime by gitweb.cgi }: +assert osxkeychainSupport -> stdenv.isDarwin; assert sendEmailSupport -> perlSupport; assert svnSupport -> perlSupport; @@ -115,7 +117,7 @@ stdenv.mkDerivation { make -C contrib/subtree '' + (lib.optionalString perlSupport '' make -C contrib/diff-highlight - '') + (lib.optionalString stdenv.isDarwin '' + '') + (lib.optionalString osxkeychainSupport '' make -C contrib/credential/osxkeychain '') + (lib.optionalString withLibsecret '' make -C contrib/credential/libsecret @@ -129,7 +131,7 @@ stdenv.mkDerivation { installFlags = [ "NO_INSTALL_HARDLINKS=1" ]; - preInstall = (lib.optionalString stdenv.isDarwin '' + preInstall = (lib.optionalString osxkeychainSupport '' mkdir -p $out/bin ln -s $out/share/git/contrib/credential/osxkeychain/git-credential-osxkeychain $out/bin/ rm -f $PWD/contrib/credential/osxkeychain/git-credential-osxkeychain.o @@ -248,8 +250,8 @@ stdenv.mkDerivation { notSupported "$out/$prog" done '') - + lib.optionalString stdenv.isDarwin '' - # enable git-credential-osxkeychain by default if darwin + + lib.optionalString osxkeychainSupport '' + # enable git-credential-osxkeychain on darwin if desired (default) mkdir -p $out/etc cat > $out/etc/gitconfig << EOF [credential]