88d14c0e29
Note that the latest version of git-annex must be compiled with GHC 7.4.1 or later, because it takes advantage of some freaky file name encoding guessing features that are absent in older versions of the base library. svn path=/nixpkgs/trunk/; revision=32819
59 lines
2.2 KiB
Nix
59 lines
2.2 KiB
Nix
{ stdenv, fetchurl, curl, dataenc, findutils, ghc, git, hS3, hslogger, HTTP, hxt
|
|
, ikiwiki, json, libuuid, MissingH, monadControl, mtl, network, pcreLight, perl
|
|
, QuickCheck2, rsync, SHA, testpack, utf8String, which, liftedBase, coreutils, IfElse
|
|
}:
|
|
|
|
let
|
|
version = "3.20120230";
|
|
in
|
|
stdenv.mkDerivation {
|
|
name = "git-annex-${version}";
|
|
|
|
src = fetchurl {
|
|
url = "http://ftp.de.debian.org/debian/pool/main/g/git-annex/git-annex_${version}.tar.gz";
|
|
sha256 = "2406fd1405bcdc30cb57ba0455919b5bad2be64bcfe6b6f921cd6ea1797a66fa";
|
|
};
|
|
|
|
buildInputs = [
|
|
curl dataenc findutils ghc git hS3 hslogger HTTP hxt ikiwiki json
|
|
libuuid MissingH monadControl mtl network pcreLight perl QuickCheck2
|
|
rsync SHA testpack utf8String which liftedBase IfElse
|
|
];
|
|
|
|
checkTarget = "test";
|
|
doCheck = true;
|
|
|
|
# The 'add_url' test fails because it attempts to use the network.
|
|
preConfigure = ''
|
|
makeFlagsArray=( PREFIX=$out )
|
|
sed -i -e 's|#!/usr/bin/perl|#!${perl}/bin/perl|' mdwn2man
|
|
sed -i -e 's|"cp |"${coreutils}/bin/cp |' -e 's|"rm -f |"${coreutils}/bin/rm -f |' -e 's|, test_addurl||' test.hs
|
|
'';
|
|
|
|
meta = {
|
|
homepage = "http://git-annex.branchable.com/";
|
|
description = "Manage files with git without checking them into git";
|
|
license = stdenv.lib.licenses.gpl3Plus;
|
|
|
|
longDescription = ''
|
|
Git-annex allows managing files with git, without checking the
|
|
file contents into git. While that may seem paradoxical, it is
|
|
useful when dealing with files larger than git can currently
|
|
easily handle, whether due to limitations in memory, checksumming
|
|
time, or disk space.
|
|
|
|
Even without file content tracking, being able to manage files
|
|
with git, move files around and delete files with versioned
|
|
directory trees, and use branches and distributed clones, are all
|
|
very handy reasons to use git. And annexed files can co-exist in
|
|
the same git repository with regularly versioned files, which is
|
|
convenient for maintaining documents, Makefiles, etc that are
|
|
associated with annexed files but that benefit from full revision
|
|
control.
|
|
'';
|
|
|
|
platforms = ghc.meta.platforms;
|
|
maintainers = [ stdenv.lib.maintainers.simons ];
|
|
};
|
|
}
|