2021-01-21 17:00:13 +00:00
|
|
|
|
{ fetchurl, lib, stdenv, zlib, bzip2, libgcrypt
|
2017-03-03 03:56:57 +00:00
|
|
|
|
, gdbm, gperf, tdb, gnutls, db, libuuid
|
2021-01-19 06:50:56 +00:00
|
|
|
|
, lzo, pkg-config, guile, rpcsvc-proto, libtirpc
|
2017-03-03 03:56:57 +00:00
|
|
|
|
}:
|
2011-11-13 14:33:31 +00:00
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2012-03-01 21:39:43 +00:00
|
|
|
|
name = "libchop-0.5.2";
|
2011-11-13 14:33:31 +00:00
|
|
|
|
|
|
|
|
|
src = fetchurl {
|
2011-11-13 22:25:30 +00:00
|
|
|
|
url = "mirror://savannah/libchop/${name}.tar.gz";
|
2012-03-01 21:39:43 +00:00
|
|
|
|
sha256 = "0fpdyxww41ba52d98blvnf543xvirq1v9xz1i3x1gm9lzlzpmc2g";
|
2011-11-13 14:33:31 +00:00
|
|
|
|
};
|
|
|
|
|
|
2020-08-11 19:32:32 +01:00
|
|
|
|
patches = [ ./gets-undeclared.patch ./size_t.patch ./0001-Fix-RPC-compilation-when-using-libtirpc-rather-than-.patch ];
|
2013-03-02 10:12:03 +00:00
|
|
|
|
|
2021-01-19 06:50:56 +00:00
|
|
|
|
nativeBuildInputs = [ pkg-config gperf rpcsvc-proto ];
|
2020-08-11 19:32:32 +01:00
|
|
|
|
|
|
|
|
|
NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ];
|
|
|
|
|
NIX_LDFLAGS = [ "-ltirpc" ];
|
2018-12-01 17:32:32 +00:00
|
|
|
|
|
2011-11-13 22:25:30 +00:00
|
|
|
|
buildInputs =
|
|
|
|
|
[ zlib bzip2 lzo
|
|
|
|
|
libgcrypt
|
2014-01-31 20:05:37 +00:00
|
|
|
|
gdbm db tdb
|
2011-11-13 22:25:30 +00:00
|
|
|
|
gnutls libuuid
|
2020-08-11 19:32:32 +01:00
|
|
|
|
guile libtirpc
|
2011-11-13 22:25:30 +00:00
|
|
|
|
];
|
2011-11-13 14:33:31 +00:00
|
|
|
|
|
2017-03-03 03:56:57 +00:00
|
|
|
|
doCheck = false;
|
2011-11-13 14:33:31 +00:00
|
|
|
|
|
2016-09-07 17:06:41 +01:00
|
|
|
|
preConfigure = ''
|
|
|
|
|
sed -re 's%@GUILE@%&/guile%' -i */Makefile.* Makefile.*
|
|
|
|
|
'';
|
|
|
|
|
|
2021-01-21 17:00:13 +00:00
|
|
|
|
meta = with lib; {
|
2014-08-24 15:21:08 +01:00
|
|
|
|
description = "Tools & library for data backup and distributed storage";
|
2011-11-13 22:25:30 +00:00
|
|
|
|
|
|
|
|
|
longDescription =
|
|
|
|
|
'' Libchop is a set of utilities and library for data backup and
|
|
|
|
|
distributed storage. Its main application is chop-backup, an
|
|
|
|
|
encrypted backup program that supports data integrity checks,
|
|
|
|
|
versioning at little cost, distribution among several sites,
|
|
|
|
|
selective sharing of stored data, adaptive compression, and more.
|
|
|
|
|
The library itself, which chop-backup builds upon, implements
|
|
|
|
|
storage techniques such as content-based addressing, content hash
|
|
|
|
|
keys, Merkle trees, similarity detection, and lossless compression.
|
|
|
|
|
It makes it easy to combine them in different ways. The
|
|
|
|
|
‘chop-archiver’ and ‘chop-block-server’ tools, illustrated in the
|
|
|
|
|
manual, provide direct access to these facilities from the command
|
|
|
|
|
line. It is written in C and has Guile (Scheme) bindings.
|
|
|
|
|
'';
|
2011-11-13 14:33:31 +00:00
|
|
|
|
|
2020-04-01 02:11:51 +01:00
|
|
|
|
homepage = "https://www.nongnu.org/libchop/";
|
2017-03-03 03:56:57 +00:00
|
|
|
|
license = licenses.gpl3Plus;
|
2018-07-22 20:50:19 +01:00
|
|
|
|
maintainers = with maintainers; [ ];
|
2018-04-30 23:43:54 +01:00
|
|
|
|
platforms = platforms.gnu ++ platforms.linux;
|
2011-11-13 14:33:31 +00:00
|
|
|
|
};
|
|
|
|
|
}
|