nixpkgs/pkgs/tools/backup/duplicity/default.nix

44 lines
1.4 KiB
Nix
Raw Normal View History

2017-03-24 10:48:00 +01:00
{ stdenv, fetchurl, python2Packages, librsync, ncftp, gnupg, rsync, makeWrapper }:
2017-03-24 10:48:00 +01:00
python2Packages.buildPythonApplication rec {
2014-01-13 16:48:04 +01:00
name = "duplicity-${version}";
version = "0.7.18.2";
src = fetchurl {
2018-12-01 18:32:32 +01:00
url = "https://code.launchpad.net/duplicity/${stdenv.lib.versions.majorMinor version}-series/${version}/+download/${name}.tar.gz";
sha256 = "0j37dgyji36hvb5dbzlmh5rj83jwhni02yq16g6rd3hj8f7qhdn2";
};
2017-03-24 10:48:00 +01:00
buildInputs = [ librsync makeWrapper python2Packages.wrapPython ];
propagatedBuildInputs = with python2Packages; [
2018-06-15 11:27:31 +02:00
boto cffi cryptography ecdsa enum idna pygobject3 fasteners
2017-03-24 10:48:00 +01:00
ipaddress lockfile paramiko pyasn1 pycrypto six
];
checkInputs = with python2Packages; [ lockfile mock pexpect ];
# lots of tests are failing, although we get a little further now with the bits in preCheck
doCheck = false;
2016-10-27 17:15:18 +02:00
postInstall = ''
wrapProgram $out/bin/duplicity \
--prefix PATH : "${stdenv.lib.makeBinPath [ gnupg ncftp rsync ]}"
2017-03-24 10:48:00 +01:00
wrapPythonPrograms
'';
2016-10-27 17:15:18 +02:00
2017-03-24 10:48:00 +01:00
preCheck = ''
patchShebangs testing
2016-10-27 17:15:18 +02:00
2017-03-24 10:48:00 +01:00
substituteInPlace testing/__init__.py \
--replace 'mkdir testfiles' 'mkdir -p testfiles'
'';
2017-03-24 10:48:00 +01:00
meta = with stdenv.lib; {
description = "Encrypted bandwidth-efficient backup using the rsync algorithm";
2018-12-01 18:32:32 +01:00
homepage = https://www.nongnu.org/duplicity;
2017-03-24 10:48:00 +01:00
license = licenses.gpl2Plus;
maintainers = with maintainers; [ peti ];
2017-03-24 10:48:00 +01:00
platforms = platforms.unix;
};
}