nixpkgs/pkgs/applications/version-management/git-and-tools/default.nix
Peter Simons 38f6d36e91 git-annex: updated to version 3.20111231
svn path=/nixpkgs/trunk/; revision=31212
2012-01-02 14:51:26 +00:00

111 lines
3.3 KiB
Nix

/* moving all git tools into one attribute set because git is unlikely to be
* referenced by other packages and you can get a fast overview.
*/
args: with args; with pkgs;
let
inherit (pkgs) stdenv fetchgit fetchurl subversion;
in
rec {
git = lib.makeOverridable (import ./git) {
inherit fetchurl stdenv curl openssl zlib expat perl python gettext gnugrep
asciidoc texinfo xmlto docbook2x docbook_xsl docbook_xml_dtd_45 libxslt
cpio tcl tk makeWrapper subversionClient;
svnSupport = false; # for git-svn support
guiSupport = false; # requires tcl/tk
sendEmailSupport = false; # requires plenty of perl libraries
perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey];
smtpPerlLibs = [
perlPackages.NetSMTP perlPackages.NetSMTPSSL
perlPackages.IOSocketSSL perlPackages.NetSSLeay
perlPackages.MIMEBase64 perlPackages.AuthenSASL
perlPackages.DigestHMAC
];
};
# Git with SVN support, but without GUI.
gitSVN = lowPrio (appendToName "with-svn" (git.override {
svnSupport = true;
}));
# The full-featured Git.
gitFull = appendToName "full" (git.override {
svnSupport = true;
guiSupport = true;
sendEmailSupport = stdenv.isDarwin == false;
});
gitGit = import ./git/git-git.nix {
inherit fetchurl sourceFromHead stdenv curl openssl zlib expat perl gettext
asciidoc texinfo xmlto docbook2x
docbook_xsl docbook_xml_dtd_45 libxslt
cpio tcl tk makeWrapper subversion autoconf;
svnSupport = false;
guiSupport = false;
perlLibs = [perlPackages.LWP perlPackages.URI perlPackages.TermReadKey subversion];
};
gitAnnex = lib.makeOverridable (import ./git-annex) {
inherit stdenv fetchurl libuuid rsync findutils curl perl git ikiwiki which coreutils;
inherit (haskellPackages) ghc MissingH utf8String pcreLight SHA dataenc
HTTP testpack hS3 mtl network hslogger hxt json liftedBase monadControl;
QuickCheck2 = haskellPackages.QuickCheck_2_4_0_1;
};
qgit = import ./qgit {
inherit fetchurl stdenv;
inherit (xlibs) libXext libX11;
qt = qt4;
};
qgitGit = import ./qgit/qgit-git.nix {
inherit fetchurl sourceFromHead stdenv;
inherit (xlibs) libXext libX11;
qt = qt4;
};
stgit = import ./stgit {
inherit fetchurl stdenv python git;
};
topGit = lib.makeOverridable (import ./topgit) {
inherit stdenv fetchurl unzip;
};
tig = stdenv.mkDerivation {
name = "tig-0.16";
src = fetchurl {
url = "http://jonas.nitro.dk/tig/releases/tig-0.16.tar.gz";
sha256 = "167kak44n66wqjj6jrv8q4ijjac07cw22rlpqjqz3brlhx4cb3ix";
};
buildInputs = [ncurses asciidoc xmlto docbook_xsl];
installPhase = ''
make install
make install-doc
'';
meta = {
description = "console git repository browser that additionally can act as a pager for output from various git commands";
homepage = http://jonas.nitro.dk/tig/;
license = "GPLv2";
};
};
gitFastExport = import ./fast-export {
inherit fetchgit stdenv mercurial coreutils git makeWrapper subversion;
};
git2cl = import ./git2cl {
inherit fetchgit stdenv perl;
};
svn2git = import ./svn2git {
inherit stdenv fetchgit ruby makeWrapper;
git = gitSVN;
};
gitSubtree = import ./git-subtree {
inherit stdenv fetchurl git asciidoc xmlto docbook_xsl docbook_xml_dtd_45 libxslt;
};
}