adding gitAttr

now containing qgit, stgit, topGit, hg2git
updating gitGit (git dev version), adding qgit-git (dev version)

svn path=/nixpkgs/trunk/; revision=13816
This commit is contained in:
Marc Weber
2009-01-20 22:15:42 +00:00
parent 269f914ab7
commit 0ad62a0edb
12 changed files with 140 additions and 42 deletions
@@ -0,0 +1,71 @@
/* 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 fetchurl getConfig;
inherit (pkgs.bleedingEdgeRepos) sourceByName;
in
rec {
git = import ./git {
inherit fetchurl stdenv curl openssl zlib expat perl gettext
asciidoc texinfo xmlto docbook2x
docbook_xsl docbook_xml_dtd_42 libxslt
cpio tcl tk makeWrapper subversion;
svnSupport = getConfig ["git" "svnSupport"] false; # for git-svn support
guiSupport = getConfig ["git" "guiSupport"] false;
perlLibs = [perlLWP perlURI perlTermReadKey subversion];
};
gitGit = import ./git/git-git.nix {
inherit fetchurl stdenv curl openssl zlib expat perl gettext
asciidoc texinfo xmlto docbook2x
docbook_xsl docbook_xml_dtd_42 libxslt
cpio tcl tk makeWrapper subversion autoconf;
inherit (bleedingEdgeRepos) sourceByName;
svnSupport = getConfig ["git" "svnSupport"] false; # for git-svn support
guiSupport = getConfig ["git" "guiSupport"] false;
perlLibs = [perlLWP perlURI perlTermReadKey subversion];
};
qgit = import ./qgit {
inherit fetchurl stdenv;
inherit (xlibs) libXext libX11;
qt = qt3;
};
qgitGit = import ./qgit/qgit-git.nix {
inherit fetchurl stdenv;
inherit (xlibs) libXext libX11;
inherit (bleedingEdgeRepos) sourceByName;
qt = qt4;
};
stgit = import ./stgit {
inherit fetchurl stdenv python git;
};
topGit = stdenv.mkDerivation {
name = "TopGit-git-patched";
src = sourceByName "topGit"; # destination directory is patched
installPhase = ''
mkdir -p $out/etc/bash_completion.d
make install
mv contrib/tg-completion.bash $out/etc/bash_completion.d
'';
dontPatchELF = 1;
meta = {
description = "TopGit aims to make handling of large amount of interdependent topic branches easier";
homepage = http://repo.or.cz/w/topgit.git; # maybe there is also another one, I haven't checked
license = "GPLv2";
};
};
hg2git = import ./hg2git {
inherit fetchurl stdenv mercurial coreutils git makeWrapper;
inherit (bleedingEdgeRepos) sourceByName;
};
}
@@ -0,0 +1,28 @@
make sure `gitman.info' isn't produced since it's broken (duplicate
node names).
diff --git a/Documentation/Makefile b/Documentation/Makefile
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -84,7 +84,7 @@ man1: $(DOC_MAN1)
man5: $(DOC_MAN5)
man7: $(DOC_MAN7)
-info: git.info gitman.info
+info: git.info
install: man
$(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
@@ -96,10 +96,9 @@ install: man
install-info: info
$(INSTALL) -d -m 755 $(DESTDIR)$(infodir)
- $(INSTALL) -m 644 git.info gitman.info $(DESTDIR)$(infodir)
+ $(INSTALL) -m 644 git.info $(DESTDIR)$(infodir)
if test -r $(DESTDIR)$(infodir)/dir; then \
$(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) git.info ;\
- $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) gitman.info ;\
else \
echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \
fi
@@ -14,11 +14,16 @@ assert svnSupport -> (subversion != null && perlLibs != [] && subversion.perlBin
assert svnSupport -> subversion.perlBindings;
stdenv.mkDerivation rec {
# the glob patch adds the filter [touching paths (glob)] to gitk
# contact marco-oweber@gmx.de if you want to know more details
name = "git-git-with-glob-patch";
src = sourceByName "git";
patches = [ ./glob-path.patch ./docbook2texi.patch ];
patchePhase = ''
patch -p1 < ${./docbook2texi-2.patch}
sed -i 's/docbook2x-texi/docbook2texi/gc' Documentation/Makefile
'';
# maybe this introduces unneccessary dependencies ?
patchPhase = "
unset patchPhase; patchPhase;
@@ -0,0 +1,26 @@
args: with args;
stdenv.mkDerivation {
name = "hg2git";
src = sourceByName "hg2git";
buildInputs =([mercurial.python mercurial makeWrapper]);
installPhase = ''
ensureDir $out/bin;
cp hg2git.sh hg2git.py $out/bin
cat >> $out/bin/hg2git-doc << EOF
#!${coreutils}/bin/cat
$(cat hg2git.txt)
EOF
chmod +x $out/bin/hg2git-doc
wrapProgram $out/bin/hg2git.sh \
--set PYTHONPATH "$(echo ${mercurial}/lib/python*/site-packages)"
'';
meta = {
description = "mercurial to git one way conversion";
homepage = "http://git.grml.org/?p=hg-to-git.git;a=summary";
license = "?"; # the .py file is GPLv2
};
}
@@ -0,0 +1,17 @@
{stdenv, fetchurl, qt, libXext, libX11, sourceByName}:
stdenv.mkDerivation rec {
name = "qgit-git";
meta =
{
license = "GPLv2";
homepage = "http://digilander.libero.it/mcostalba/";
description = "Graphical front-end to Git";
};
src = sourceByName "qgit";
buildInputs = [qt libXext libX11];
buildPhase = ''
qmake PREFIX=$out
make
'';
}