1bf5ded193
In all of these files, there is no meta.platforms but only meta.hydraPlatforms, which doesn't seem to have any purpose except being inconsistent.
68 lines
1.9 KiB
Nix
68 lines
1.9 KiB
Nix
{ stdenv, fetchFromGitHub, fetchurl, makeWrapper
|
|
, perl, pandoc, pythonPackages, git
|
|
, par2cmdline ? null, par2Support ? false
|
|
}:
|
|
|
|
assert par2Support -> par2cmdline != null;
|
|
|
|
let version = "0.26"; in
|
|
|
|
with stdenv.lib;
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "bup-${version}";
|
|
|
|
src = fetchFromGitHub {
|
|
repo = "bup";
|
|
owner = "bup";
|
|
rev = version;
|
|
sha256 = "0g7b0xl3kg0z6rn81fvzl1xnvva305i7pjih2hm68mcj0adk3v0d";
|
|
};
|
|
|
|
buildInputs = [ git pythonPackages.python ];
|
|
nativeBuildInputs = [ pandoc perl makeWrapper ];
|
|
|
|
patches = optional stdenv.isDarwin (fetchurl {
|
|
url = "https://github.com/bup/bup/commit/75d089e7cdb7a7eb4d69c352f56dad5ad3aa1f97.diff";
|
|
sha256 = "05kp47p30a45ip0fg090vijvzc7ijr0alc3y8kjl6bvv3gliails";
|
|
name = "darwin_10_10.patch";
|
|
});
|
|
|
|
postPatch = ''
|
|
patchShebangs .
|
|
substituteInPlace Makefile --replace "-Werror" ""
|
|
substituteInPlace Makefile --replace "./format-subst.pl" "${perl}/bin/perl ./format-subst.pl"
|
|
'' + optionalString par2Support ''
|
|
substituteInPlace cmd/fsck-cmd.py --replace "['par2'" "['${par2cmdline}/bin/par2'"
|
|
'';
|
|
|
|
dontAddPrefix = true;
|
|
|
|
makeFlags = [
|
|
"MANDIR=$(out)/share/man"
|
|
"DOCDIR=$(out)/share/doc/bup"
|
|
"BINDIR=$(out)/bin"
|
|
"LIBDIR=$(out)/lib/bup"
|
|
];
|
|
|
|
postInstall = ''
|
|
wrapProgram $out/bin/bup \
|
|
--prefix PATH : ${git}/bin \
|
|
--prefix PYTHONPATH : ${concatStringsSep ":" (map (x: "$(toPythonPath ${x})")
|
|
(with pythonPackages; [ pyxattr pylibacl setuptools fuse tornado ]))}
|
|
'';
|
|
|
|
meta = {
|
|
homepage = "https://github.com/bup/bup";
|
|
description = "Efficient file backup system based on the git packfile format";
|
|
license = licenses.gpl2Plus;
|
|
|
|
longDescription = ''
|
|
Highly efficient file backup system based on the git packfile format.
|
|
Capable of doing *fast* incremental backups of virtual machine images.
|
|
'';
|
|
|
|
platforms = platforms.linux;
|
|
maintainers = with maintainers; [ muflax ];
|
|
};
|
|
}
|