Commit Graph

336 Commits

Author SHA1 Message Date
Michael Weiss
7d2561cbdd git: 2.26.1 -> 2.26.2 (security, CVE-2020-11008)
See: https://raw.githubusercontent.com/git/git/master/Documentation/RelNotes/2.17.5.txt
2020-04-22 13:54:25 +02:00
Frederik Rietdijk
23be4a8b4d Merge master into staging-next 2020-04-21 19:59:56 +02:00
Michael Weiss
666042141e
git: Fix the update.sh script and use HTTPS
The syntax is ${parameter:-word} (i.e. previously this used
"latestTag" instead of the actual value).
(Fixes a regression from #85278.)

Also: Even though getting the latest tag isn't really security critical
(as long as Git itself is secure against untrusted input), I'd prefer to
switch from the Git to the HTTPS protocol (for authentication of the
server and encryption + uses a standard port).
2020-04-21 14:30:11 +02:00
Frederik Rietdijk
803b3d296c Merge staging-next into staging 2020-04-21 08:29:51 +02:00
R. RyanTM
9fe2f2565e gitAndTools.gitFull: 2.25.1 -> 2.25.2 2020-04-21 08:14:29 +02:00
Vladimír Čunát
9d77dc28d2
Merge #85263: git: 2.25.1 -> 2.26.1 (into staging-next) 2020-04-16 16:59:53 +02:00
Jan Tojnar
4b706490da
Merge branch 'staging-next' into staging 2020-04-16 10:10:38 +02:00
James Ottaway
4848eef29d git: Allow the update script to target non-latest versions
This came in handy when I wanted to bump a patch version while avoiding
a new minor version.
2020-04-15 17:05:34 +10:00
James Ottaway
fbd29dcbe7 git: 2.25.1 -> 2.26.1
This version addresses CVE-2020-5260.

See https://lore.kernel.org/lkml/xmqqy2qy7xn8.fsf@gitster.c.googlers.com/
2020-04-15 14:23:52 +10:00
Matthew Bauer
e520d6af29
Merge pull request #84415 from matthewbauer/mb-cross-fixes-april2020
Cross compilation fixes [april 2020]
2020-04-13 16:48:38 -04:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Matthew Bauer
d0dbdfea4f git: fix cross compilation 2020-04-06 16:36:14 -04:00
Andrew Childs
bc4264a95f git: use tcl/tk from nixpkgs on darwin 2020-03-02 22:29:47 +09:00
Andrew Childs
880ce71f67 Revert "git: Fix git-gui to work on Catalina"
This reverts commit 1b6ef1268f.
2020-03-02 22:29:47 +09:00
Frederik Rietdijk
ef156f7a8b Merge staging-next into staging 2020-02-27 10:15:34 +01:00
Peter Hoeg
2ddfc45235
Merge pull request #77071 from peterhoeg/git_emacs_files
git: upstream no longer ships .el files for emacs
2020-02-23 21:16:55 +08:00
Tim Steinbach
b2a903a3e7
git: 2.25.0 -> 2.25.1 2020-02-20 08:22:22 -05:00
Dave Nicponski
1b6ef1268f git: Fix git-gui to work on Catalina
The existing post-install was not successfully patching the git-gui script,
and thus was invoking the packaged osx app which uses the system tk,
which is too old to work (and is no longer supported by Apple anyway).
2020-02-10 17:19:26 -05:00
Benjamin Esham
35b403bf12 git: enable zsh completion
Git ships with a zsh completion script, but this script was previously
only available at $out/share/git/contrib/completion/git-completion.zsh,
which is not a path (or a filename) that would be discovered by a
typical zsh installation. This commit symlinks that file to
$out/share/zsh/site-functions/_git, which is a more standard location.

That zsh completion script is mostly a wrapper around the Bash
completion script, so this commit also patches the former so that it can
"find" the latter.
2020-02-09 09:22:20 +01:00
Tim Steinbach
a1d7308cf9
git: 2.24.1 -> 2.25.0 2020-01-13 19:22:51 -05:00
Peter Hoeg
a15efd8f73 git: upstream no longer ships .el files for emacs 2019-12-31 12:54:25 +08:00
Robin Gloster
2157dcd141
treewide: installFlags is a list 2019-12-30 13:22:43 +01:00
Frederik Rietdijk
dfdf1597a7 Merge master into staging-next 2019-12-13 11:43:39 +01:00
Wout Mertens
697b44b631
Merge pull request #75406 from andersk/gitk-completion
git: Install bash-completion symlink for gitk
2019-12-11 15:00:36 +01:00
edef
8fe0c8c351 git: 2.24.0 -> 2.24.1
CVE-2019-1348, CVE-2019-1349, CVE-2019-1350, CVE-2019-1351,
CVE-2019-1352, CVE-2019-1353, CVE-2019-1354, CVE-2019-1387,
CVE-2019-19604

Link: https://lore.kernel.org/git/xmqqr21cqcn9.fsf@gitster-ct.c.googlers.com/
2019-12-11 00:01:06 +00:00
Frederik Rietdijk
f3618342ec Merge staging-next into staging 2019-12-10 19:01:27 +01:00
Tim Steinbach
68708349f1
git: Add git to update script
Otherwise the system's git will be used, which may not exist
or, as is the case with Ubuntu, not have the --sort flag for ls-remote.
2019-12-10 08:30:00 -05:00
Anders Kaseorg
a16dbef1c1 git: Install bash-completion symlink for gitk
Since bash-completion rules are loaded dynamically, the completion
rules for `gitk <Tab>` waere not being loaded until the user first
typed `git <Tab>`.  Fix this by adding a symlink named `gitk`.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2019-12-09 16:09:56 -08:00
Konrad Borowski
6e6b6a7fd5 git: enable some of previously broken tests 2019-11-29 11:28:53 +01:00
Wout Mertens
acfa5d8324
Merge pull request #74213 from ruuda/fix-git-perl-support
git: fix the "perlSupport = false" configuration
2019-11-28 21:13:05 +01:00
Jörg Thalheim
8c145dc0fb
git: build with python3
git-p4 seems to be python3 ready:

https://github.com/git/git/blob/master/git-p4.py#L32
2019-11-28 11:29:19 +00:00
Ruud van Asseldonk
2163fc7f0a git: fix the "perlSupport = false" configuration
When perlSupport = false, we will set NO_PERL=1, and build Git without
Perl support. This is a build option that Git supports. However, Git's
test suite still requires a Perl to be available to run the tests, and
we did not provide one. The tests respect PERL_PATH, and if it is not
set, they default to /usr/bin/perl.

Before this commit, if we set "perlSupport = false", then no Perl would
be available to the package, and so the tests would default to
/usr/bin/perl. When building without a sandbox, that could still work,
even though there is no "perl" on the path, because the tests defaulted
to an absolute path.

You can reproduce this issue as follows:

    nix-build -E 'let pkgs = (import ./default.nix) {}; in pkgs.git.override { perlSupport = false; }'

I just ran into this when trying to build pkgs.git from an old version
of Nixpkgs that I was able to build just fine in the past, and today it
would not build any more, complaining when running the tests:

    make -C t/ all
    make[1]: Entering directory '/build/git-2.18.0/t'
    rm -f -r 'test-results'
    /nix/store/czx8vkrb9jdgjyz8qfksh10vrnqa723l-bash-4.4-p23/bin/bash: /usr/bin/perl: No such file or directory

In the past the sandbox was not enabled by default, so then it worked
for me. But now that it is enabled, my host's (not NixOS) /usr/bin/perl
is no longer accessible, and the build fails.

The solution is to explicitly set PERL_PATH when running the tests. This
*almost* works, except that there appears to be a bug in the test for
"git request-pull". That command is a Bash script that calls Perl at
some point, so it requires Perl, and therefore it cannot be supported
when NO_PERL=1. But that particular test does not check whether Git was
compiled with Perl support (other tests do include that check), and that
makes the test fail:

    t5150-request-pull.sh ..............................
    not ok 4 - pull request after push
    not ok 5 - request asks HEAD to be pulled
    not ok 6 - pull request format
    not ok 7 - request-pull ignores OPTIONS_KEEPDASHDASH poison
    not ok 9 - pull request with mismatched object
    not ok 10 - pull request with stale object
    Dubious, test returned 1 (wstat 256, 0x100)
    Failed 6/10 subtests

This output makes sense if you look at t5150-request-pull.sh. Test 1 and
2 are setup steps. Test 3 does call request-pull, but it expects the
command to fail, and it cannot distinguish between the command exiting
with a nonzero exit code, or failing to start it at all. So test 3
passes for the wrong reasons. Test 4 through 10 all call request-pull,
so they fail.

The quick workaround here is to disable the test. I will look into
upstreaming a patch that makes the test skip itself when Perl is
disabled.
2019-11-27 19:23:56 +01:00
John Ericson
d0d5136cce Merge remote-tracking branch 'upstream/master' into wrapper-pname-support 2019-11-24 17:25:07 +00:00
John Ericson
9b090ccbca treewide: Get rid of most parseDrvName without breaking compat
That is because this commit should be merged to both master and
release-19.09.
2019-11-24 17:22:28 +00:00
Daiderd Jordan
185e30c664
git: disable failing test on darwin
The tests for null patterns where changed in 25754125cef278c7e9492fbd6dc4a28319b01f18,
it's possible utf-8 normalisation is causing different behaviour here.

    not ok 54 - LC_ALL='C' git grep -P -f f -i 'Æ<NUL>[Ð]' a
    not ok 57 - LC_ALL='C' git grep -P -f f -i '[Æ]<NUL>Ð' a
    not ok 60 - LC_ALL='C' git grep -P -f f -i '[Æ]<NUL>ð' a
    not ok 63 - LC_ALL='C' git grep -P -f f -i 'Æ<NUL>Ð' a
    Dubious, test returned 1 (wstat 256, 0x100)
    Failed 4/145 subtests
            (less 48 skipped subtests: 93 okay)
2019-11-22 21:02:21 +01:00
Tim Steinbach
0a9e548b2f
git: 2.23.0 -> 2.24.0 2019-11-04 09:35:15 -05:00
Alyssa Ross
4b63c915af
git: drop extraneous sysconfdir trailing slash
I noticed while strace-ing that Git was trying to open
/etc//gitconfig.  Not a big deal, but it is definitely more correct
without the trailing slash.
2019-11-03 21:26:56 +00:00
Matthew Bauer
0c1cef2f11
Merge pull request #68366 from sorbits/git-bash-completion
Install git’s bash completion so that it is loaded on demand
2019-09-18 09:40:52 -04:00
Allan Odgaard
dc45fc4ca2 Install git’s bash completion so that it is loaded on demand
Putting the file in $out/share/bash-completion/completions means that it will be loaded on demand by nixpkgs.bash-completion.

With the old location, the user would either have to explicitly source the file during bash startup, or set BASH_COMPLETION_COMPAT_DIR before sourcing bash_completion.sh, which will eagerly load everything in that directory.
2019-09-09 19:16:29 +02:00
Frederik Rietdijk
5061fe0c2c Merge staging-next into staging 2019-08-28 08:26:42 +02:00
Vladimír Čunát
2e6bf42a22
Merge branch 'master' into staging-next
There ver very many conflicts, basically all due to
name -> pname+version.  Fortunately, almost everything was auto-resolved
by kdiff3, and for now I just fixed up a couple evaluation problems,
as verified by the tarball job.  There might be some fallback to these
conflicts, but I believe it should be minimal.

Hydra nixpkgs: ?compare=1538299
2019-08-24 08:55:37 +02:00
Robin Gloster
4e60b0efae
treewide: update globin's maintained drvs 2019-08-20 19:36:05 +02:00
Izorkin
6da7a17ffb git: 2.22.1 -> 2.23.0 2019-08-18 09:19:42 +03:00
volth
c814d72b51 treewide: name -> pname 2019-08-17 10:54:38 +00:00
Tim Steinbach
ce1b77231a
git: 2.22.0 -> 2.22.1 2019-08-13 13:58:37 -04:00
Wout Mertens
f24e74d159
Merge pull request #53494 from kirelagin/git-instaweb
git, gitweb: Fix git-instaweb
2019-08-04 23:40:16 +02:00
Demin Dmitriy
ea688c051d git: remove runtime dependency on gcc
Reduces gitMinimal closure size from 329.6M to 174.8M.

Fixes the issue https://github.com/NixOS/nixpkgs/issues/64350.

In git 2.22.0 git-stash is no longer a shell script and now it is just a symlink to git.
`postInstall` assumed that it was a shell script, tried to patch it and
ended up corrupting the file and made `strip` refuse stripping it.
2019-07-17 10:33:13 +02:00
Peter Simons
eeffb474bd
Merge pull request #56069 from delroth/git-diff-highlight
git: build diff-highlight if Perl support is enabled
2019-06-14 17:27:02 +02:00
Will Dietz
eeb9e6c762
git: 2.21.0 -> 2.22.0
https://github.com/git/git/blob/master/Documentation/RelNotes/2.22.0.txt
2019-06-07 20:55:34 -05:00
Frederik Rietdijk
d108b49168 Merge master into staging-next 2019-04-09 16:38:35 +02:00