summaryrefslogtreecommitdiff
path: root/pkgs/duply/default.nix
blob: 2d24d4fa785d12a4cacc7055deb282528a0c5e79 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{ stdenv, fetchurl, makeWrapper, coreutils, python3, duplicity, gawk, gnupg1, bash, gnugrep, txt2man, which }:
stdenv.mkDerivation rec {
  name = "duply-${version}";
  version = "2.1";

  src = fetchurl {
    url = "mirror://sourceforge/project/ftplicity/duply%20%28simple%20duplicity%29/2.1.x/duply_${version}.tgz";
    sha256 = "0i5j7h7h6ssrwhll0sfhymisshg54kx7j45zcqffzjxa0ylvzlm8";
  };

  buildInputs = [ txt2man makeWrapper ];

  postPatch = "patchShebangs .";

  installPhase = ''
    mkdir -p "$out/bin"
    mkdir -p "$out/share/man/man1"
    install -vD duply "$out/bin"
    sed -i $out/bin/duply -e "1a \
    export PATH='${stdenv.lib.makeBinPath [ coreutils python3 duplicity gawk gnupg1 bash gnugrep txt2man which ]}'
    " -e "1a \
    export DUPL_PYTHON_BIN=$(basename ${duplicity}/lib/python*)
    "
    "$out/bin/duply" txt2man > "$out/share/man/man1/duply.1"
  '';

  meta = with stdenv.lib; {
    description = "Shell front end for the duplicity backup tool";
    longDescription = ''
      Duply is a shell front end for the duplicity backup tool
      http://duplicity.nongnu.org/. It greatly simplifies it's usage by
      implementing backup job profiles, batch commands and more. Who says
      secure backups on non-trusted spaces are no child's play?
    '';
    homepage = http://duply.net/;
    license = licenses.gpl2;
    maintainers = [ maintainers.bjornfor ];
    platforms = stdenv.lib.platforms.unix;
  };
}