gnu: Add borg.
* gnu/packages/backup.scm (borg): New variable.
This commit is contained in:
parent
5a39b07f8a
commit
6fc5c11b81
|
@ -1,7 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
|
||||
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -406,3 +406,56 @@ compression, and more. The library itself implements storage techniques such
|
|||
as content-addressable storage, content hash keys, Merkle trees, similarity
|
||||
detection, and lossless compression.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public borg
|
||||
(package
|
||||
(name "borg")
|
||||
(version "1.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "borgbackup" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wa6cvqs3rni5nwrgagigchcly8a53rxk56z0zn8iaii2cqrw2sh"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-env
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((openssl (assoc-ref inputs "openssl"))
|
||||
(lz4 (assoc-ref inputs "lz4")))
|
||||
(setenv "BORG_OPENSSL_PREFIX" openssl)
|
||||
(setenv "BORG_LZ4_PREFIX" lz4)
|
||||
(setenv "PYTHON_EGG_CACHE" "/tmp")
|
||||
#t)))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(man (string-append out "/share/man/man1")))
|
||||
(and
|
||||
(zero? (system* "python3" "setup.py" "build_ext" "--inplace"))
|
||||
(zero? (system* "make" "-C" "docs" "man"))
|
||||
(begin
|
||||
(install-file "docs/_build/man/borg.1" man)
|
||||
#t))))))))
|
||||
(native-inputs
|
||||
`(("python-setuptools-scm" ,python-setuptools-scm)
|
||||
;; For generating the documentation.
|
||||
("python-sphinx" ,python-sphinx)
|
||||
("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme)))
|
||||
(inputs
|
||||
`(("acl" ,acl)
|
||||
("lz4" ,lz4)
|
||||
("openssl" ,openssl)
|
||||
("python-llfuse" ,python-llfuse)
|
||||
("python-msgpack" ,python-msgpack)))
|
||||
(synopsis "Deduplicated, encrypted, authenticated and compressed backups")
|
||||
(description "Borg is a deduplicating backup program. Optionally, it
|
||||
supports compression and authenticated encryption. The main goal of Borg is to
|
||||
provide an efficient and secure way to backup data. The data deduplication
|
||||
technique used makes Borg suitable for daily backups since only changes are
|
||||
stored. The authenticated encryption technique makes it suitable for backups
|
||||
to not fully trusted targets. Borg is a fork of Attic.")
|
||||
(home-page "https://borgbackup.github.io/borgbackup/")
|
||||
(license license:bsd-3)))
|
||||
|
|
Loading…
Reference in New Issue