commit:     47c50fbdd12db2979b04f7e68889b0bff83beee1
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  9 04:39:42 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Nov  9 04:39:42 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=47c50fbd

sys-fs/btrfs-progs: add 6.17.1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-fs/btrfs-progs/Manifest                  |   2 +
 sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild | 188 +++++++++++++++++++++++++++
 2 files changed, 190 insertions(+)

diff --git a/sys-fs/btrfs-progs/Manifest b/sys-fs/btrfs-progs/Manifest
index 38db38081406..d3a87fa76c91 100644
--- a/sys-fs/btrfs-progs/Manifest
+++ b/sys-fs/btrfs-progs/Manifest
@@ -10,5 +10,7 @@ DIST btrfs-progs-v6.16.1.tar.sign 566 BLAKE2B 
d2d7078120f781f51abac29ad2d052d7e1
 DIST btrfs-progs-v6.16.1.tar.xz 4953240 BLAKE2B 
4d734022ddf3ff49a9a409ef387566a0e95bed22d2f2a3517e75e1c53083cd99e78da14afacc55cf49279c4dcdd718a9252ced52b280740f241c9526e21b3561
 SHA512 
55348627bdc3a0bcf6202ed352c539a9318328b2b9e0ab95526f34dff203d2abb66d70d4620122a6f90b7c1ccb7c646d297be3f6047a14144c867bae0cdc13d4
 DIST btrfs-progs-v6.16.tar.sign 566 BLAKE2B 
80e30440ac59c034fd4d9d9cec7a5ddd1fd9533e350066d3c92d276e97023ba12b83daa98bb87065ea93a3651a6b51d4195d3cb89f8dae43986674434dffab7e
 SHA512 
21f134616f91e7cf2e863908ae9793c7561f24985ec879056d7dddf6ae3b0766ae83bd5205dc12633b215cae1cce177bb9b8c39c84909fbaf53624b44d3e2dc7
 DIST btrfs-progs-v6.16.tar.xz 4949180 BLAKE2B 
375c60a93bc5b62d7c3a94d5ed108b81786b27f2beba27d85bcede94a892d84e71b1fe00a1574cc53066fe77bb37408b2b382db4a1664fefcc676c1c3efa1c60
 SHA512 
b7b89c9f6855f48a369bfcaf647b50cd41fbd6b11e9017a57eace36917c0daec14d93946121640728e0dfcda74941f28f9c31abf694313cb5134156a2c1907f7
+DIST btrfs-progs-v6.17.1.tar.sign 566 BLAKE2B 
0313dce425d84f16eb64085f4144bcfc21172f96223de0a36d78a8dc5f4da4d0ff5b2453961c99607426ce412a3f0d7acfc205788e897684b68d7da5758e339d
 SHA512 
39dabbc3546e32468ae71b5d83606aabc38d9ef1996e1c40d8b5976cd4924b4877c373e05888b284988e35d5b363801f0c67f93ae43d907cba76dff145fc9f7b
+DIST btrfs-progs-v6.17.1.tar.xz 4964964 BLAKE2B 
6340fb5f87d3dcf9598785fbb00ccd2278e268c1b798a1013ede9d25fc8e2005376c2333c84befcf95ec9ae2b7e75562750a2bf8fbfc7bbf966d713e1feb5818
 SHA512 
7723dd924025e7d6d6cfa081dcbe86bfe86cc6f226c8eb7317d86871864807257bd96c19c715b819e76125b33b90100f6897f4eb665d8414f30a3aa7a5aba631
 DIST btrfs-progs-v6.17.tar.sign 566 BLAKE2B 
9c21f8c001cb9d80c84e42e751ca77713caf25e8b38888c67a4175e45b5d95c58128f7b7d112fed1f694e9eb077d97f6187b6f4e58d4a346dab156949055844a
 SHA512 
e278efedabb51e8522f562f52aa2666727904775625b17e280ea7ded5563620a4a50aad57b165ab53af7594214070472bd2e0692ff1ca8aef76bcc6574d3f365
 DIST btrfs-progs-v6.17.tar.xz 4962800 BLAKE2B 
301409e4f0e17c25620070bab0aedc1e57ad672bc7b4e4c1f9db2cd34c6104667800df2979ff456554c94e415be649dd7b8f43859d6539f84a1c050c2db27dd4
 SHA512 
f8b39f66c4bf7cdaa8eee471f473eb88415435d309da45d45267ecd8d9e401367de881259c038fbc03a57bb661991d11ae74e8409b382dcd5ef98c66811a798a

diff --git a/sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild 
b/sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild
new file mode 100644
index 000000000000..ad1b1253f165
--- /dev/null
+++ b/sys-fs/btrfs-progs/btrfs-progs-6.17.1.ebuild
@@ -0,0 +1,188 @@
+# Copyright 2008-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Please bump with dev-python/btrfsutil
+
+PYTHON_COMPAT=( python3_{11..14} )
+inherit bash-completion-r1 python-any-r1 udev
+
+if [[ ${PV} == 9999 ]]; then
+       EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git";
+       EGIT_BRANCH="devel"
+       WANT_LIBTOOL="none"
+       inherit autotools git-r3
+else
+       VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc
+       inherit verify-sig
+
+       MY_PV="v${PV/_/-}"
+       MY_P="${PN}-${MY_PV}"
+       SRC_URI="
+               
https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz
+               verify-sig? ( 
https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign
 )
+       "
+       S="${WORKDIR}"/${PN}-${MY_PV}
+
+       if [[ ${PV} != *_rc* ]] ; then
+               KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 
~riscv ~sparc ~x86"
+       fi
+fi
+
+DESCRIPTION="Btrfs filesystem utilities"
+HOMEPAGE="https://btrfs.readthedocs.io/en/latest/";
+
+LICENSE="GPL-2"
+SLOT="0/0" # libbtrfs soname
+IUSE="+convert +man experimental reiserfs static static-libs udev +zstd"
+# Could support it with just !systemd => eudev, see mdadm, but let's
+# see if someone asks for it first.
+REQUIRED_USE="static? ( !udev )"
+
+# Tries to mount repaired filesystems
+RESTRICT="test"
+
+RDEPEND="
+       dev-libs/lzo:2=
+       sys-apps/util-linux:=[static-libs(+)?]
+       virtual/zlib:=
+       convert? (
+               sys-fs/e2fsprogs:=
+               reiserfs? (
+                       >=sys-fs/reiserfsprogs-3.6.27
+               )
+       )
+       udev? ( virtual/libudev:= )
+       zstd? ( app-arch/zstd:= )
+"
+DEPEND="
+       ${RDEPEND}
+       >=sys-kernel/linux-headers-5.10
+       convert? ( sys-apps/acl )
+       static? (
+               dev-libs/lzo:2[static-libs(+)]
+               sys-apps/util-linux:0[static-libs(+)]
+               virtual/zlib:=[static-libs(+)]
+               convert? (
+                       sys-fs/e2fsprogs[static-libs(+)]
+                       reiserfs? (
+                               >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)]
+                       )
+               )
+               zstd? ( app-arch/zstd[static-libs(+)] )
+       )
+"
+BDEPEND="
+       virtual/pkgconfig
+       man? (
+               $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}]
+                       dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]')
+       )
+"
+
+python_check_deps() {
+       python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+       python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
+}
+
+if [[ ${PV} == 9999 ]]; then
+       BDEPEND+=" sys-devel/gnuconfig"
+else
+       BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )"
+fi
+
+pkg_setup() {
+       : # Prevent python-any-r1_python_setup
+}
+
+if [[ ${PV} != 9999 ]]; then
+       src_unpack() {
+               # Upstream sign the decompressed .tar
+               if use verify-sig; then
+                       einfo "Unpacking ${MY_P}.tar.xz ..."
+                       verify-sig_verify_detached - 
"${DISTDIR}"/${MY_P}.tar.sign \
+                               < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee 
>(tar -xf -))
+                       assert "Unpack failed"
+               else
+                       default
+               fi
+       }
+fi
+
+src_prepare() {
+       default
+
+       if [[ ${PV} == 9999 ]]; then
+               local AT_M4DIR=config
+               eautoreconf
+
+               local automakedir="$(autotools_run_tool --at-output automake 
--print-libdir)"
+               [[ -e ${automakedir} ]] || die "Could not locate automake 
directory"
+
+               ln -s "${automakedir}"/install-sh config/install-sh || die
+               ln -s "${BROOT}"/usr/share/gnuconfig/config.guess 
config/config.guess || die
+               ln -s "${BROOT}"/usr/share/gnuconfig/config.sub 
config/config.sub || die
+       fi
+}
+
+src_configure() {
+       local myeconfargs=(
+               --bindir="${EPREFIX}"/sbin
+
+               --enable-lzo
+               $(use_enable experimental)
+               --disable-python
+               $(use_enable convert)
+               $(use_enable man documentation)
+               $(use_enable elibc_glibc backtrace)
+               $(use_enable static-libs static)
+               $(use_enable udev libudev)
+               $(use_enable zstd)
+
+               # Could support libgcrypt, libsodium, libkcapi, openssl, botan
+               --with-crypto=builtin
+               --with-convert=ext2$(usev reiserfs ',reiserfs')
+       )
+
+       export EXTRA_PYTHON_CFLAGS="${CFLAGS}"
+       export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}"
+
+       if use man; then
+               python_setup
+       fi
+
+       # bash as a temporary workaround for 
https://github.com/kdave/btrfs-progs/pull/721
+       CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+       emake V=1 all $(usev static)
+}
+
+src_test() {
+       emake V=1 -j1 -C tests test
+}
+
+src_install() {
+       local makeargs=(
+               $(usev static install-static)
+       )
+
+       emake V=1 DESTDIR="${D}" install "${makeargs[@]}"
+
+       if use experimental; then
+               exeinto /sbin
+               doexe btrfs-corrupt-block
+       fi
+
+       newbashcomp btrfs-completion btrfs
+}
+
+pkg_postinst() {
+       udev_reload
+}
+
+pkg_postrm() {
+       udev_reload
+}

Reply via email to