summary refs log tree commit diff
path: root/pkgs/tools/backup
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/backup')
-rw-r--r--pkgs/tools/backup/borg/default.nix18
-rw-r--r--pkgs/tools/backup/duplicity/default.nix7
-rw-r--r--pkgs/tools/backup/zbackup/default.nix17
3 files changed, 31 insertions, 11 deletions
diff --git a/pkgs/tools/backup/borg/default.nix b/pkgs/tools/backup/borg/default.nix
index f9a949f4d3f..df3523322e8 100644
--- a/pkgs/tools/backup/borg/default.nix
+++ b/pkgs/tools/backup/borg/default.nix
@@ -1,21 +1,23 @@
-{ stdenv, fetchzip, python3Packages, openssl, acl }:
+{ stdenv, fetchurl, python3Packages, openssl, acl, lz4 }:
 
 python3Packages.buildPythonPackage rec {
-  name = "borg-${version}";
-  version = "0.23.0";
+  name = "borgbackup-${version}";
+  version = "0.27.0";
   namePrefix = "";
 
-  src = fetchzip {
-    name = "${name}-src";
-    url = "https://github.com/borgbackup/borg/archive/${version}.tar.gz";
-    sha256 = "1ns00bhrh4zm1s70mm32gnahj7yh4jdpkb8ziarhvcnknz7aga67";
+  src = fetchurl {
+    url = "https://pypi.python.org/packages/source/b/borgbackup/borgbackup-${version}.tar.gz";
+    sha256 = "04iizidag4fwy6kx1747d633s1amr81slgk743qsfbwixaxfjq9b";
   };
 
   propagatedBuildInputs = with python3Packages;
-    [ cython msgpack openssl acl llfuse tox detox ];
+    [ cython msgpack openssl acl llfuse tox detox lz4 setuptools_scm ];
 
   preConfigure = ''
     export BORG_OPENSSL_PREFIX="${openssl}"
+    export BORG_LZ4_PREFIX="${lz4}"
+    # note: fix for this issue already upstream and probably in 0.27.1 (or whatever the next release is called)
+    substituteInPlace setup.py --replace "possible_openssl_prefixes.insert(0, os.environ.get('BORG_LZ4_PREFIX'))" "possible_lz4_prefixes.insert(0, os.environ.get('BORG_LZ4_PREFIX'))"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index 79f394c2aac..556b9651200 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, python, librsync, ncftp, gnupg, boto, makeWrapper
-, lockfile, setuptools }:
+, lockfile, setuptools, paramiko, pycrypto, ecdsa
+}:
 
 let
   version = "0.7.02";
@@ -15,10 +16,10 @@ stdenv.mkDerivation {
   installPhase = ''
     python setup.py install --prefix=$out
     wrapProgram $out/bin/duplicity \
-      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})" \
+      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pycrypto}):$(toPythonPath ${ecdsa}):$(toPythonPath ${paramiko}):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})" \
       --prefix PATH : "${gnupg}/bin:${ncftp}/bin"
     wrapProgram $out/bin/rdiffdir \
-      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})" \
+      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pycrypto}):$(toPythonPath ${ecdsa}):$(toPythonPath ${paramiko}):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})"
   '';
 
   buildInputs = [ python librsync makeWrapper setuptools ];
diff --git a/pkgs/tools/backup/zbackup/default.nix b/pkgs/tools/backup/zbackup/default.nix
new file mode 100644
index 00000000000..25bd7236e68
--- /dev/null
+++ b/pkgs/tools/backup/zbackup/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl, cmake, zlib, openssl, protobuf, protobufc, lzo, libunwind } :
+stdenv.mkDerivation rec {
+  name = "zbackup-${version}";
+  version = "1.4.4";
+  src = fetchurl {
+    url = "https://github.com/zbackup/zbackup/archive/1.4.4.tar.gz";
+    sha256 = "11csla7n44lg7x6yqg9frb21vnkr8cvnh6ardibr3nj5l39crk7g";
+  };
+  buildInputs = [ zlib openssl protobuf lzo libunwind ];
+  nativeBuildInputs = [ cmake protobufc ];
+  meta = {
+    description = "A versatile deduplicating backup tool";
+    homepage = "http://zbackup.org/";
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.gpl2Plus;
+  };
+}