diff options
author | Marek Szuba <marecki@gentoo.org> | 2020-04-22 23:18:13 +0100 |
---|---|---|
committer | Marek Szuba <marecki@gentoo.org> | 2020-04-23 00:47:30 +0100 |
commit | 7b823a13b3f7097b6b12079650783ba072fd764c (patch) | |
tree | 9d8e06442da983961bddd8bd55ff8b485e213f95 /app-backup/borgmatic | |
parent | app-emulation/protontricks: re-enable tests (diff) | |
download | gentoo-7b823a13b3f7097b6b12079650783ba072fd764c.tar.gz gentoo-7b823a13b3f7097b6b12079650783ba072fd764c.tar.bz2 gentoo-7b823a13b3f7097b6b12079650783ba072fd764c.zip |
app-backup/borgmatic: switch to single-implementation mode
No real benefits of installing this for multiple Python implementations,
in the end borgmatic is always invoked as scripts.
While at it, clean up dependencies a bit.
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'app-backup/borgmatic')
-rw-r--r-- | app-backup/borgmatic/borgmatic-1.5.1-r2.ebuild | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/app-backup/borgmatic/borgmatic-1.5.1-r2.ebuild b/app-backup/borgmatic/borgmatic-1.5.1-r2.ebuild new file mode 100644 index 000000000000..02359afde23e --- /dev/null +++ b/app-backup/borgmatic/borgmatic-1.5.1-r2.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7} ) +DISTUTILS_SINGLE_IMPL=1 +DISTUTILS_USE_SETUPTOOLS="rdepend" + +inherit distutils-r1 systemd + +DESCRIPTION="Automatically create, prune and verify backups with borgbackup" +HOMEPAGE="https://torsion.org/borgmatic/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" + +# borg is called as an external tool, hence no pythonic stuff +RDEPEND="app-backup/borgbackup + $(python_gen_cond_dep ' + dev-python/colorama[${PYTHON_USEDEP}] + >=dev-python/pykwalify-1.6.0[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + <dev-python/ruamel-yaml-0.17.0[${PYTHON_USEDEP}] + ')" +BDEPEND=" + test? ( + $(python_gen_cond_dep ' + dev-python/flexmock[${PYTHON_USEDEP}] + ') + )" + +PATCHES=( + "${FILESDIR}"/${PN}-1.5.1-systemd_service_bin_path.patch + "${FILESDIR}"/${PN}-1.5.1-no_test_coverage.patch +) + +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # Unlike the other two test files in integration/commands, which use the + # relevant modules' respective APIs, test_borgmatic.py tries to call the + # 'borgmatic' executable - which by the time we execute src_test will + # not have been created yet. distutils_install_for_testing would likely + # take care of this - but between the aforementioned behaviour inconsistency + # and the fact the only test run from this file as of version 1.5.1 is the + # parsing of contents of 'borgmatic --version', just skip it for now. + rm -f "${S}"/tests/integration/commands/test_borgmatic.py +} + +src_install() { + distutils-r1_src_install + systemd_dounit sample/systemd/borgmatic.{service,timer} + keepdir /etc/borgmatic +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + elog "To generate a sample configuration file, run:" + elog " generate-borgmatic-config" + else + elog "To upgrade your configuration file to the current version, run:" + elog " upgrade-borgmatic-config" + fi + elog + elog "Systemd users wishing to periodically run borgmatic can use the provided timer and service units." +} |