summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2020-03-29 21:46:53 +0100
committerMarek Szuba <marecki@gentoo.org>2020-03-29 22:39:14 +0100
commit4961db15c6560f10fa685ccd9e19d83b3ed883c1 (patch)
treea03d7cf90daf0910c7a0187a69282dd44a6e5d08 /app-backup/borgmatic
parentdev-python/pytest-shutil: keyworded 1.7.0 for ppc64, bug #711846 (diff)
downloadgentoo-4961db15c6560f10fa685ccd9e19d83b3ed883c1.tar.gz
gentoo-4961db15c6560f10fa685ccd9e19d83b3ed883c1.tar.bz2
gentoo-4961db15c6560f10fa685ccd9e19d83b3ed883c1.zip
app-backup/borgmatic: install systemd units
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'app-backup/borgmatic')
-rw-r--r--app-backup/borgmatic/borgmatic-1.5.1-r1.ebuild65
-rw-r--r--app-backup/borgmatic/files/borgmatic-1.5.1-systemd_service_bin_path.patch8
2 files changed, 73 insertions, 0 deletions
diff --git a/app-backup/borgmatic/borgmatic-1.5.1-r1.ebuild b/app-backup/borgmatic/borgmatic-1.5.1-r1.ebuild
new file mode 100644
index 00000000000..d5b11aab9bb
--- /dev/null
+++ b/app-backup/borgmatic/borgmatic-1.5.1-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+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"
+
+DEPEND="${PYTHON_DEPS}
+ 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}]
+RDEPEND="${DEPEND}
+ app-backup/borgbackup"
+BDEPEND="test? (
+ ${DEPEND}
+ 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 has not even been created by now.
+ # Seeing as the only test run from this file as of 2020-03-25 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."
+}
diff --git a/app-backup/borgmatic/files/borgmatic-1.5.1-systemd_service_bin_path.patch b/app-backup/borgmatic/files/borgmatic-1.5.1-systemd_service_bin_path.patch
new file mode 100644
index 00000000000..90e94ac1f55
--- /dev/null
+++ b/app-backup/borgmatic/files/borgmatic-1.5.1-systemd_service_bin_path.patch
@@ -0,0 +1,8 @@
+--- a/sample/systemd/borgmatic.service
++++ b/sample/systemd/borgmatic.service
+@@ -21,4 +21,4 @@
+
+ # Delay start to prevent backups running during boot.
+ ExecStartPre=sleep 1m
+-ExecStart=systemd-inhibit --who="borgmatic" --why="Prevent interrupting scheduled backup" /root/.local/bin/borgmatic --syslog-verbosity 1
++ExecStart=systemd-inhibit --who="borgmatic" --why="Prevent interrupting scheduled backup" /usr/bin/borgmatic --syslog-verbosity 1