diff options
author | Yury G. Kudryashov <urkud.urkud@gmail.com> | 2010-04-02 07:17:11 +0000 |
---|---|---|
committer | Yury G. Kudryashov <urkud.urkud@gmail.com> | 2010-04-02 07:17:11 +0000 |
commit | 7af927d96b6b6f5241220beac146883e7a5e7718 (patch) | |
tree | 77fc5eac50bf60f675f8c23c923f94b51588c7c2 | |
parent | 7531041ca4d29c90dbbf94084e1dd1758b5d80ba (diff) | |
download | nixlib-7af927d96b6b6f5241220beac146883e7a5e7718.tar nixlib-7af927d96b6b6f5241220beac146883e7a5e7718.tar.gz nixlib-7af927d96b6b6f5241220beac146883e7a5e7718.tar.bz2 nixlib-7af927d96b6b6f5241220beac146883e7a5e7718.tar.lz nixlib-7af927d96b6b6f5241220beac146883e7a5e7718.tar.xz nixlib-7af927d96b6b6f5241220beac146883e7a5e7718.tar.zst nixlib-7af927d96b6b6f5241220beac146883e7a5e7718.zip |
Improve git-svn support
svn path=/nixpkgs/trunk/; revision=20925
-rw-r--r-- | pkgs/applications/version-management/git-and-tools/default.nix | 19 | ||||
-rw-r--r-- | pkgs/applications/version-management/git-and-tools/git/default.nix | 9 |
2 files changed, 13 insertions, 15 deletions
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix index cf24e21db0ef..eb1fe3f29a14 100644 --- a/pkgs/applications/version-management/git-and-tools/default.nix +++ b/pkgs/applications/version-management/git-and-tools/default.nix @@ -3,7 +3,8 @@ */ args: with args; with pkgs; let - inherit (pkgs) stdenv fetchurl getConfig subversion; + inherit (pkgs) stdenv fetchurl subversion; + config = getPkgConfig "git"; in rec { @@ -12,9 +13,9 @@ rec { asciidoc texinfo xmlto docbook2x docbook_xsl docbook_xml_dtd_45 libxslt cpio tcl tk makeWrapper subversion; - svnSupport = getConfig ["git" "svnSupport"] false; # for git-svn support - guiSupport = getConfig ["git" "guiSupport"] false; - perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey subversion]; + svnSupport = config "svnSupport" false; # for git-svn support + guiSupport = config "guiSupport" false; + perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey]; }; # The full-featured Git. @@ -25,11 +26,7 @@ rec { cpio tcl tk makeWrapper; svnSupport = true; guiSupport = true; - perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey subversion]; - # gitFull requires subversion with perlBindings enabled at least - subversion = pkgs.subversion.override { - perlBindings = true; - }; + perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey]; }; gitGit = import ./git/git-git.nix { @@ -37,8 +34,8 @@ rec { asciidoc texinfo xmlto docbook2x docbook_xsl docbook_xml_dtd_45 libxslt cpio tcl tk makeWrapper subversion autoconf; - svnSupport = getConfig ["git" "svnSupport"] false; # for git-svn support - guiSupport = getConfig ["git" "guiSupport"] false; + svnSupport = config "svnSupport" false; # for git-svn support + guiSupport = config "guiSupport" false; perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey subversion]; }; 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 7e4e903f2c7d..aae8676b9c30 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -6,8 +6,9 @@ , pythonSupport ? true }: -# `git-svn' support requires Subversion and various Perl libraries. -assert svnSupport -> (subversion != null && perlLibs != [] && subversion.perlBindings); +let + svn = subversion.override { perlBindings = true; }; +in stdenv.mkDerivation rec { name = "git-1.7.0.3"; @@ -49,12 +50,12 @@ stdenv.mkDerivation rec { ''# wrap git-svn gitperllib=$out/lib/perl5/site_perl - for i in ${builtins.toString perlLibs}; do + for i in ${builtins.toString perlLibs} ${svn}; do gitperllib=$gitperllib:$i/lib/perl5/site_perl done wrapProgram "$out/libexec/git-core/git-svn" \ --set GITPERLLIB "$gitperllib" \ - --prefix PATH : "${subversion}/bin" '' + --prefix PATH : "${svn}/bin" '' else '' # replace git-svn by notification script notSupported $out/bin/git-svn "reinstall with config git = { svnSupport = true } set" '') |