commit: 6e2f1e97296b2be549d43933ad5dc0daca83d6b7 Author: Petr Vaněk <arkamar <AT> gentoo <DOT> org> AuthorDate: Sat Sep 20 10:00:54 2025 +0000 Commit: Petr Vaněk <arkamar <AT> gentoo <DOT> org> CommitDate: Sat Sep 20 10:08:13 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e2f1e97
app-backup/borgmatic: add 2.0.8 The pypi archive no longer contains tests, therefore, the SRC_URI was switched to github. One tests is additionally deselected as it fails with py3.14. It was actually never present in previous pypi archives. The issue was reported upstream, see [1]. Link: https://projects.torsion.org/borgmatic-collective/borgmatic/issues/1149 [1] Signed-off-by: Petr Vaněk <arkamar <AT> gentoo.org> app-backup/borgmatic/Manifest | 1 + app-backup/borgmatic/borgmatic-2.0.8.ebuild | 88 +++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+) diff --git a/app-backup/borgmatic/Manifest b/app-backup/borgmatic/Manifest index 64887fabcb9e..fa369f6e8fde 100644 --- a/app-backup/borgmatic/Manifest +++ b/app-backup/borgmatic/Manifest @@ -1 +1,2 @@ DIST borgmatic-2.0.7.tar.gz 684455 BLAKE2B 13822c36e65ba3d1ec117673177698a7ccc4bb916ffbe251312c038003a7e09cca0725e614c2e406e3bbbf36e5368c6d1760ac8248451edb4b3186b8a81b20fb SHA512 9bac248f2db4c9fdaa7d8b465af2b3b392280a2b5655f34138058a6f6ac3f7a48b8266bde3c54f71f165243f85088c88da63a3fc3145dc2c83f4ec24b4b2c6ce +DIST borgmatic-2.0.8.gh.tar.gz 857794 BLAKE2B 42291719384d81b01ee62049947072453d3bac09c35f12a29e41396083b840f8f8e7d9f0ca5f46148e0ddef9be5980fa173d04c2f3d0b9aaa4e18f693d51b115 SHA512 f1e290dcee88c9827d3c03be7ae876bc319180d845f828f68b95d15d10e215ce6c352ae47ac088200643eeaedc12433b731093188015da2464700daf78c256e9 diff --git a/app-backup/borgmatic/borgmatic-2.0.8.ebuild b/app-backup/borgmatic/borgmatic-2.0.8.ebuild new file mode 100644 index 000000000000..21f251610251 --- /dev/null +++ b/app-backup/borgmatic/borgmatic-2.0.8.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) +DISTUTILS_SINGLE_IMPL=1 +DISTUTILS_USE_PEP517=setuptools + +inherit distutils-r1 eapi9-ver systemd + +DESCRIPTION="Automatically create, prune and verify backups with borgbackup" +HOMEPAGE=" + https://torsion.org/borgmatic/ + https://projects.torsion.org/borgmatic-collective/borgmatic +" +# tests are not present in pypi archive since version 2.0.8 +SRC_URI=" + https://github.com/borgmatic-collective/borgmatic/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv" +IUSE="apprise" + +# borg is called as an external tool, hence no pythonic stuff +RDEPEND=" + app-backup/borgbackup + $(python_gen_cond_dep ' + dev-python/jsonschema[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/ruamel-yaml[${PYTHON_USEDEP}] + ') + apprise? ( $(python_gen_cond_dep ' + dev-python/apprise[${PYTHON_USEDEP}] + ') ) +" +BDEPEND=" + test? ( + ${RDEPEND} + $(python_gen_cond_dep ' + dev-python/apprise[${PYTHON_USEDEP}] + >=dev-python/flexmock-0.10.10[${PYTHON_USEDEP}] + ') + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.7.14-systemd_service_bin_path.patch + "${FILESDIR}"/${PN}-1.9.3-no_test_coverage.patch +) + +EPYTEST_DESELECT=( + # A fragile test whose only purpose is to make sure the NEWS file + # has been updated for the current version. + tests/integration/commands/test_borgmatic.py::test_borgmatic_version_matches_news_version + + # data_source tests were ommited in the pypi archive, they are present in + # git archive, but they fail in py3.14. + # See https://projects.torsion.org/borgmatic-collective/borgmatic/issues/1149 + tests/unit/hooks/data_source/test_dump.py::test_convert_glob_patterns_to_borg_pattern_makes_multipart_regular_expression +) + +distutils_enable_tests pytest + +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 " ${PN} config generate" + elog + elog "Systemd users wishing to periodically run ${PN} can use the provided timer and service units." + elif ver_replacing -lt 2.0.0; then + ewarn "Please be warned that ${PN}-2.0.0 has introduced several breaking changes." + ewarn "For details, please see" + ewarn + ewarn " https://github.com/borgmatic-collective/borgmatic/releases/tag/2.0.0" + ewarn + fi +}
