1{ stdenv, fetchurl, python3Packages, acl, lz4, openssl }:
2
3python3Packages.buildPythonApplication rec {
4 name = "borgbackup-${version}";
5 version = "1.0.11";
6 namePrefix = "";
7
8 src = fetchurl {
9 url = "https://github.com/borgbackup/borg/releases/download/"
10 + "${version}/${name}.tar.gz";
11 sha256 = "14fjk5dfwmjkn7nmkbhhbrk3g1wfrn8arvqd5r9jaij534nzsvpw";
12 };
13
14 nativeBuildInputs = with python3Packages; [
15 # For building documentation:
16 sphinx sphinx_rtd_theme
17 ];
18 buildInputs = [
19 acl lz4 openssl python3Packages.setuptools_scm
20 ];
21 propagatedBuildInputs = with python3Packages; [
22 cython llfuse msgpack
23 ];
24
25 preConfigure = ''
26 export BORG_OPENSSL_PREFIX="${openssl.dev}"
27 export BORG_LZ4_PREFIX="${lz4.dev}"
28 '';
29
30 postInstall = ''
31 make -C docs singlehtml
32 mkdir -p $out/share/doc/borg
33 cp -R docs/_build/singlehtml $out/share/doc/borg/html
34
35 make -C docs man
36 mkdir -p $out/share/man
37 cp -R docs/_build/man $out/share/man/man1
38 '';
39
40 meta = with stdenv.lib; {
41 description = "A deduplicating backup program (attic fork)";
42 homepage = https://borgbackup.github.io/;
43 license = licenses.bsd3;
44 platforms = platforms.unix; # Darwin and FreeBSD mentioned on homepage
45 maintainers = with maintainers; [ nckx ];
46 };
47}