# Maintainer: Lukas Fleischer # Contributor: Vlad M. pkgname=borg _pkgname=borgbackup pkgver=1.1.9 pkgrel=1 pkgdesc='Deduplicating backup program with compression and authenticated encryption' url='https://borgbackup.github.io/' license=('BSD') arch=('x86_64') depends=('acl' 'lz4' 'openssl' 'python-msgpack' 'python-setuptools' 'xz' 'zstd') optdepends=('openssh: repositories on remote hosts' 'python-llfuse: mounting backups as a FUSE file system') makedepends=('cython' 'python-sphinx' 'python-guzzle-sphinx-theme') checkdepends=('python-pytest' 'python-pytest-cov' 'python-pytest-benchmark' 'python-mock') provides=('borgbackup') replaces=('borgbackup') source=("https://github.com/$_pkgname/$pkgname/releases/download/$pkgver/$_pkgname-$pkgver.tar.gz"{,.asc} "https://github.com/borgbackup/borg/commit/a497fe07ab3c4791ac5a84e317bc69f742d69770.diff" "0001-Fix-msgpack-version-constraints-using-proper-setupto.patch") sha256sums=('7d0ff84e64c4be35c43ae2c047bb521a94f15b278c2fe63b43950c4836b42575' 'SKIP' '1dfb5c02b54dde26bf4fa4a5dd2097d3b04efa68f9d834d0f2da6553b7b43e60' '0392d573928aa8282ddb3082289a42ade7503aa285d575ce06d6296327518744') validpgpkeys=('6D5BEF9ADD2075805747B70F9F88FB52FAF7B393') # Thomas Waldmann prepare() { cd "$srcdir/$_pkgname-$pkgver" # msgpack versions are constantly broken: https://bugs.archlinux.org/task/58974 # patch submitted upstream as https://github.com/borgbackup/borg/pull/3891 # but upstream refuses to merge it, claiming that it *breaks* compatibility # rather than adds it??? We're specifically using a patch since otherwise, # this keeps on breaking with every single release, and we need to check # every single time that it isn't broken again. New versions *cannot* simply # be trusted to be sane. patch -p1 -i ../0001-Fix-msgpack-version-constraints-using-proper-setupto.patch # backport upstream patch for supporting new versions of msgpack patch -p1 -i ../a497fe07ab3c4791ac5a84e317bc69f742d69770.diff # fix Thomas Waldmann sed -i "s/is_supported_msgpack():/is_supported_msgpack():\n return True/" src/borg/helpers.py } build() { cd "$srcdir/$_pkgname-$pkgver" python setup.py build } # tests are broken because of msgpack issues, even after the above patch #check() { # cd "$srcdir/$_pkgname-$pkgver/build/lib.linux-$CARCH-3".*/ # LANG=en_US.UTF-8 PYTHONPATH="$PWD:$PYTHONPATH" py.test --cov=borg \ # --benchmark-skip --pyargs borg.testsuite --debug -v \ # -k 'not test_non_ascii_acl' #} package() { cd "$srcdir/$_pkgname-$pkgver" python setup.py install --root="$pkgdir" --optimize=1 # remove junk files rm -r "$pkgdir"/usr/lib/python*/site-packages/{.benchmarks,.coverage} install -Dm644 scripts/shell_completions/bash/borg \ "$pkgdir/usr/share/bash-completion/completions/borg" install -Dm644 scripts/shell_completions/fish/borg.fish \ "$pkgdir/usr/share/fish/vendor_completions.d/borg.fish" install -Dm644 scripts/shell_completions/zsh/_borg "$pkgdir/usr/share/zsh/site-functions/_borg" install -Dm644 -t "$pkgdir/usr/share/man/man1/" "docs/man/"*.1 install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" }