summaryrefslogtreecommitdiff
path: root/app-backup/borgmatic
diff options
context:
space:
mode:
Diffstat (limited to 'app-backup/borgmatic')
-rw-r--r--app-backup/borgmatic/Manifest6
-rw-r--r--app-backup/borgmatic/borgmatic-1.5.1-r1.ebuild65
-rw-r--r--app-backup/borgmatic/borgmatic-1.5.1.ebuild62
-rw-r--r--app-backup/borgmatic/files/borgmatic-1.5.1-no_test_coverage.patch11
-rw-r--r--app-backup/borgmatic/files/borgmatic-1.5.1-systemd_service_bin_path.patch8
-rw-r--r--app-backup/borgmatic/metadata.xml12
6 files changed, 164 insertions, 0 deletions
diff --git a/app-backup/borgmatic/Manifest b/app-backup/borgmatic/Manifest
new file mode 100644
index 000000000000..eb887c25b095
--- /dev/null
+++ b/app-backup/borgmatic/Manifest
@@ -0,0 +1,6 @@
+AUX borgmatic-1.5.1-no_test_coverage.patch 284 BLAKE2B 91e041cb2d3d15b65c47075b0524e6e2a60631702eb10243da79b8051504e33476e6f8d61a3d9a172302b9859a01afb0d640a502cc95f69e45024a8fdb5ebc53 SHA512 1604d425f4c3267a41449f5d05675634f365d0be0630b49812e87d13ebc4ee78e01259f2371afbf2150b5b1203676e20c50c1613be24e0fa39df635d229f80bc
+AUX borgmatic-1.5.1-systemd_service_bin_path.patch 446 BLAKE2B bad832573f35e832e5a111a12d6c61cf2e2b1111e91252923e841ae5ec6661ed4f1c4d1e4cc94fe31887d8ee0b2a54aac7d79f8bd0e6f27a2e89f1ff0484c091 SHA512 299791d5079522270954a6742669f3031c0d6164ad7037387dad7f7dccebbe20b83f21f1e30ee61915c2703a370ba9987ab66989c4a99c1706ddf2b17bc2c718
+DIST borgmatic-1.5.1.tar.gz 67401 BLAKE2B c11f4b9f9acc7d7bf4e482953968dbaabc33f1513ec8f20868518bca22ffcafee90569c06ec603be919d47d724dd4a3a904e44fbb40c2309d8cb78e9277b5cc7 SHA512 9ded9bd5d6db866d196fedee88737f3d3eef6cb0e61c5f55ac543602c4429adcb57608d7f6c798edfd6ac1ecd14aadd9a88fdf94ef1f0eab4c26a9d2a29c5e38
+EBUILD borgmatic-1.5.1-r1.ebuild 1873 BLAKE2B f55f268e70e90a7ccdedfd03ff4a3577adbca5a61ad60db4a4f40089dbfc35b2b56581b042609f7a9c662d8c7ad31b4bf8426aa2a83deefeb6028db491bd7146 SHA512 e20d608e96ea7e04567d680a1332842b21361833f206a7cac5c352861c02d96a84505d302f0c17c40a28ba4dead9b1e1cb7b9e7248bed9543c88e6dda9a4cae1
+EBUILD borgmatic-1.5.1.ebuild 1715 BLAKE2B b192f98ec20435f2d9e6e4e2dee76d5f2819b2aba661cebde5fb2223e092e22082a32925336d023ff6460edcb891e128c5117a1770c305ce430d0c727d9f570e SHA512 76b841403a2ca739ec65952e0974962f12d0e912e9b8e417ff7a5c27519827ebf154a09cfc5ec15fbc6133a25454e555a11cadc07c0be15d8b86aa00ccc307e2
+MISC metadata.xml 365 BLAKE2B 6fceb22a831c0ee0669e3545737da7a6fe778e9b188fba0c72f8e70988404ad444b2b75cd7e6001012cd2226d5f6f7a7096b3f837de905e559e94badf649d412 SHA512 72be8c3e4d69e9c33307d20b3ec2b05b134787fde7e015fa70f0dbea365163f235f21490500d68fe19b771528f813cf3257d1df175d5d009f6e9414ba5ea4db1
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 000000000000..d5b11aab9bb1
--- /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/borgmatic-1.5.1.ebuild b/app-backup/borgmatic/borgmatic-1.5.1.ebuild
new file mode 100644
index 000000000000..754e0f063c96
--- /dev/null
+++ b/app-backup/borgmatic/borgmatic-1.5.1.ebuild
@@ -0,0 +1,62 @@
+# 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
+
+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-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
+ keepdir /etc/borgmatic
+ # TODO: install systemd units (and explain them in postinst); need patching
+}
+
+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
+}
diff --git a/app-backup/borgmatic/files/borgmatic-1.5.1-no_test_coverage.patch b/app-backup/borgmatic/files/borgmatic-1.5.1-no_test_coverage.patch
new file mode 100644
index 000000000000..28562398a407
--- /dev/null
+++ b/app-backup/borgmatic/files/borgmatic-1.5.1-no_test_coverage.patch
@@ -0,0 +1,11 @@
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -3,7 +3,7 @@
+
+ [tool:pytest]
+ testpaths = tests
+-addopts = --cov-report term-missing:skip-covered --cov=borgmatic --ignore=tests/end-to-end
++addopts = --ignore=tests/end-to-end
+ filterwarnings =
+ ignore:Coverage disabled.*:pytest.PytestWarning
+
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 000000000000..90e94ac1f558
--- /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
diff --git a/app-backup/borgmatic/metadata.xml b/app-backup/borgmatic/metadata.xml
new file mode 100644
index 000000000000..e69f4b798a41
--- /dev/null
+++ b/app-backup/borgmatic/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+</maintainer>
+<upstream>
+ <remote-id type="github">witten/borgmatic</remote-id>
+ <remote-id type="pypi">borgmatic</remote-id>
+</upstream>
+</pkgmetadata>