about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/version-management/git-and-tools/git
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-04-22 21:15:06 +0000
committerAlyssa Ross <hi@alyssa.is>2019-04-22 21:18:23 +0000
commitb935ae5f3cfb2bb4f9a3746d284f156a6dece505 (patch)
tree5efe4e2e7a7723a737d0130a333b057c5e76df40 /nixpkgs/pkgs/applications/version-management/git-and-tools/git
parentdc9566e91c9453378c24e98b5737234364670df5 (diff)
parentd26027792812fbfad4d0f451b5f47fdabf7fdeb9 (diff)
downloadnixlib-b935ae5f3cfb2bb4f9a3746d284f156a6dece505.tar
nixlib-b935ae5f3cfb2bb4f9a3746d284f156a6dece505.tar.gz
nixlib-b935ae5f3cfb2bb4f9a3746d284f156a6dece505.tar.bz2
nixlib-b935ae5f3cfb2bb4f9a3746d284f156a6dece505.tar.lz
nixlib-b935ae5f3cfb2bb4f9a3746d284f156a6dece505.tar.xz
nixlib-b935ae5f3cfb2bb4f9a3746d284f156a6dece505.tar.zst
nixlib-b935ae5f3cfb2bb4f9a3746d284f156a6dece505.zip
Merge commit 'd26027792812fbfad4d0f451b5f47fdabf7fdeb9'
Diffstat (limited to 'nixpkgs/pkgs/applications/version-management/git-and-tools/git')
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch7
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-send-email-honor-PATH.patch10
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-sh-i18n.patch109
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git/installCheck-path.patch7
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git/ssh-path.patch10
-rwxr-xr-xnixpkgs/pkgs/applications/version-management/git-and-tools/git/update.sh18
7 files changed, 58 insertions, 107 deletions
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix
index 46e88b1e0fc4..c76b82ffe6d4 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -20,7 +20,7 @@ assert sendEmailSupport -> perlSupport;
 assert svnSupport -> perlSupport;
 
 let
-  version = "2.19.2";
+  version = "2.21.0";
   svn = subversionClient.override { perlBindings = perlSupport; };
 in
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
-    sha256 = "1scbggzghkzzfqg4ky3qh7h9w87c3zya4ls5disz7dbx56is7sgw";
+    sha256 = "0a0d0b07rmvs985zpndxxy0vzr0vq53kq5kyd68iv6gf8gkirjwc";
   };
 
   outputs = [ "out" ] ++ stdenv.lib.optional perlSupport "gitweb";
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch
index ab5bb3c3a6c7..f8f8ab86a9ce 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/docbook2texi.patch
@@ -3,9 +3,10 @@ and (2) make sure `gitman.info' isn't produced since it's broken (duplicate
 node names).
 
 diff --git a/Documentation/Makefile b/Documentation/Makefile
+index 26a2342bea..ceccd67ebb 100644
 --- a/Documentation/Makefile
 +++ b/Documentation/Makefile
-@@ -122,7 +122,7 @@
+@@ -132,7 +132,7 @@ HTML_REPO = ../../git-htmldocs
  
  MAKEINFO = makeinfo
  INSTALL_INFO = install-info
@@ -14,7 +15,7 @@ diff --git a/Documentation/Makefile b/Documentation/Makefile
  DBLATEX = dblatex
  ASCIIDOC_DBLATEX_DIR = /etc/asciidoc/dblatex
  DBLATEX_COMMON = -p $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.xsl -s $(ASCIIDOC_DBLATEX_DIR)/asciidoc-dblatex.sty
-@@ -240,7 +240,7 @@
+@@ -250,7 +250,7 @@ man1: $(DOC_MAN1)
  man5: $(DOC_MAN5)
  man7: $(DOC_MAN7)
  
@@ -23,7 +24,7 @@ diff --git a/Documentation/Makefile b/Documentation/Makefile
  
  pdf: user-manual.pdf
  
-@@ -256,10 +256,9 @@
+@@ -266,10 +266,9 @@ install-man: man
  
  install-info: info
  	$(INSTALL) -d -m 755 $(DESTDIR)$(infodir)
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-send-email-honor-PATH.patch b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-send-email-honor-PATH.patch
index 6b93d061a3be..9603d8e27c5c 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-send-email-honor-PATH.patch
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-send-email-honor-PATH.patch
@@ -1,7 +1,8 @@
 diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt
+index 1afe9fc858..05dd7c3a90 100644
 --- a/Documentation/git-send-email.txt
 +++ b/Documentation/git-send-email.txt
-@@ -208,8 +208,7 @@ a password is obtained using 'git-credential'.
+@@ -215,8 +215,7 @@ a password is obtained using 'git-credential'.
  	specify a full pathname of a sendmail-like program instead;
  	the program must support the `-i` option.  Default value can
  	be specified by the `sendemail.smtpServer` configuration
@@ -9,14 +10,15 @@ diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt
 -	`/usr/sbin`, `/usr/lib` and $PATH if such program is
 +	option; the built-in default is to search in $PATH if such program is
  	available, falling back to `localhost` otherwise.
-
+ 
  --smtp-server-port=<port>::
 diff --git a/git-send-email.perl b/git-send-email.perl
+index 8eb63b5a2f..74a61d8213 100755
 --- a/git-send-email.perl
 +++ b/git-send-email.perl
-@@ -944,8 +944,7 @@ if (defined $reply_to) {
+@@ -956,8 +956,7 @@ sub expand_one_alias {
  }
-
+ 
  if (!defined $smtp_server) {
 -	my @sendmail_paths = qw( /usr/sbin/sendmail /usr/lib/sendmail );
 -	push @sendmail_paths, map {"$_/sendmail"} split /:/, $ENV{PATH};
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-sh-i18n.patch b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-sh-i18n.patch
index 216c0e56b44c..721f2aa099c4 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-sh-i18n.patch
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/git-sh-i18n.patch
@@ -1,94 +1,23 @@
+diff --git a/git-sh-i18n.sh b/git-sh-i18n.sh
+index e1d917fd27..e90f8e1414 100644
 --- a/git-sh-i18n.sh
 +++ b/git-sh-i18n.sh
-@@ -15,87 +15,11 @@
- fi
- export TEXTDOMAINDIR
-
--# First decide what scheme to use...
--GIT_INTERNAL_GETTEXT_SH_SCHEME=fallthrough
--if test -n "$GIT_GETTEXT_POISON"
--then
--	GIT_INTERNAL_GETTEXT_SH_SCHEME=poison
--elif test -n "@@USE_GETTEXT_SCHEME@@"
--then
--	GIT_INTERNAL_GETTEXT_SH_SCHEME="@@USE_GETTEXT_SCHEME@@"
--elif test -n "$GIT_INTERNAL_GETTEXT_TEST_FALLBACKS"
--then
--	: no probing necessary
+@@ -26,7 +26,7 @@ then
+ elif test -n "$GIT_INTERNAL_GETTEXT_TEST_FALLBACKS"
+ then
+ 	: no probing necessary
 -elif type gettext.sh >/dev/null 2>&1
--then
--	# GNU libintl's gettext.sh
--	GIT_INTERNAL_GETTEXT_SH_SCHEME=gnu
--elif test "$(gettext -h 2>&1)" = "-h"
--then
--	# gettext binary exists but no gettext.sh. likely to be a gettext
--	# binary on a Solaris or something that is not GNU libintl and
--	# lack eval_gettext.
--	GIT_INTERNAL_GETTEXT_SH_SCHEME=gettext_without_eval_gettext
--fi
--export GIT_INTERNAL_GETTEXT_SH_SCHEME
--
--# ... and then follow that decision.
--case "$GIT_INTERNAL_GETTEXT_SH_SCHEME" in
--gnu)
--	# Use libintl's gettext.sh, or fall back to English if we can't.
++elif type @gettext@/bin/gettext.sh >/dev/null 2>&1
+ then
+ 	# GNU libintl's gettext.sh
+ 	GIT_INTERNAL_GETTEXT_SH_SCHEME=gnu
+@@ -43,7 +43,8 @@ export GIT_INTERNAL_GETTEXT_SH_SCHEME
+ case "$GIT_INTERNAL_GETTEXT_SH_SCHEME" in
+ gnu)
+ 	# Use libintl's gettext.sh, or fall back to English if we can't.
 -	. gettext.sh
--	;;
--gettext_without_eval_gettext)
--	# Solaris has a gettext(1) but no eval_gettext(1)
--	eval_gettext () {
--		gettext "$1" | (
--			export PATH $(git sh-i18n--envsubst --variables "$1");
--			git sh-i18n--envsubst "$1"
--		)
--	}
--
--	eval_ngettext () {
--		ngettext "$1" "$2" "$3" | (
--			export PATH $(git sh-i18n--envsubst --variables "$2");
--			git sh-i18n--envsubst "$2"
--		)
--	}
--	;;
--poison)
--	# Emit garbage so that tests that incorrectly rely on translatable
--	# strings will fail.
--	gettext () {
--		printf "%s" "# GETTEXT POISON #"
--	}
--
--	eval_gettext () {
--		printf "%s" "# GETTEXT POISON #"
--	}
--
--	eval_ngettext () {
--		printf "%s" "# GETTEXT POISON #"
--	}
--	;;
--*)
--	gettext () {
--		printf "%s" "$1"
--	}
--
--	eval_gettext () {
--		printf "%s" "$1" | (
--			export PATH $(git sh-i18n--envsubst --variables "$1");
--			git sh-i18n--envsubst "$1"
--		)
--	}
-+# GNU gettext
-+export GIT_INTERNAL_GETTEXT_SH_SCHEME=gnu
-+export PATH=@gettext@/bin:$PATH
-
--	eval_ngettext () {
--		(test "$3" = 1 && printf "%s" "$1" || printf "%s" "$2") | (
--			export PATH $(git sh-i18n--envsubst --variables "$2");
--			git sh-i18n--envsubst "$2"
--		)
--	}
--	;;
--esac
-+. @gettext@/bin/gettext.sh
-
- # Git-specific wrapper functions
- gettextln () {
++	. @gettext@/bin/gettext.sh
++	export PATH=@gettext@/bin:$PATH
+ 	;;
+ gettext_without_eval_gettext)
+ 	# Solaris has a gettext(1) but no eval_gettext(1)
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/installCheck-path.patch b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/installCheck-path.patch
index 8c68fb9f186b..4b73d11744ba 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/installCheck-path.patch
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/installCheck-path.patch
@@ -1,12 +1,13 @@
 diff --git a/t/test-lib.sh b/t/test-lib.sh
+index 8665b0a9b6..8bb892b1af 100644
 --- a/t/test-lib.sh
 +++ b/t/test-lib.sh
-@@ -923,7 +923,7 @@
+@@ -1227,7 +1227,7 @@ elif test -n "$GIT_TEST_INSTALLED"
  then
  	GIT_EXEC_PATH=$($GIT_TEST_INSTALLED/git --exec-path)  ||
  	error "Cannot run git from $GIT_TEST_INSTALLED."
--	PATH=$GIT_TEST_INSTALLED:$GIT_BUILD_DIR:$PATH
+-	PATH=$GIT_TEST_INSTALLED:$GIT_BUILD_DIR/t/helper:$PATH
 +	PATH=$GIT_TEST_INSTALLED:$GIT_BUILD_DIR/t/helper:$GIT_BUILD_DIR:$PATH
  	GIT_EXEC_PATH=${GIT_TEST_EXEC_PATH:-$GIT_EXEC_PATH}
  else # normal case, use ../bin-wrappers only unless $with_dashes:
- 	git_bin_dir="$GIT_BUILD_DIR/bin-wrappers"
+ 	if test -n "$no_bin_wrappers"
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/ssh-path.patch b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/ssh-path.patch
index addb1dbc5e06..71cdc694ac31 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/ssh-path.patch
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/ssh-path.patch
@@ -1,18 +1,18 @@
 diff --git a/connect.c b/connect.c
-index c3a014c5b..fbca3262b 100644
+index 4813f005ab..b3f12f3268 100644
 --- a/connect.c
 +++ b/connect.c
-@@ -1010,7 +1010,7 @@ static void fill_ssh_args(struct child_process *conn, const char *ssh_host,
-
+@@ -1183,7 +1183,7 @@ static void fill_ssh_args(struct child_process *conn, const char *ssh_host,
+ 
  		ssh = getenv("GIT_SSH");
  		if (!ssh)
 -			ssh = "ssh";
 +			ssh = "@ssh@";
  		variant = determine_ssh_variant(ssh, 0);
  	}
-
+ 
 diff --git a/git-gui/lib/remote_add.tcl b/git-gui/lib/remote_add.tcl
-index 480a6b30d..781720424 100644
+index 480a6b30d0..7817204241 100644
 --- a/git-gui/lib/remote_add.tcl
 +++ b/git-gui/lib/remote_add.tcl
 @@ -139,7 +139,7 @@ method _add {} {
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git/update.sh b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/update.sh
new file mode 100755
index 000000000000..05944014743f
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git/update.sh
@@ -0,0 +1,18 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl common-updater-scripts jq
+
+set -eu -o pipefail
+
+oldVersion="$(nix-instantiate --eval -E "with import ./. {}; git.version or (builtins.parseDrvName git.name).version" | tr -d '"')"
+latestTag="$(git ls-remote --tags --sort="v:refname" git://github.com/git/git.git | grep -v '\{\}' | grep -v '\-rc' | tail -1 | sed 's|^.*/v\(.*\)|\1|')"
+
+if [ ! "${oldVersion}" = "${latestTag}" ]; then
+  update-source-version git "${latestTag}"
+  nixpkgs="$(git rev-parse --show-toplevel)"
+  default_nix="$nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix"
+  nix-build -A git
+  git add "${default_nix}"
+  git commit -m "git: ${oldVersion} -> ${latestTag}"
+else
+  echo "git is already up-to-date"
+fi