commit: d347172b354ab9790072f4818aa4456e71fb2198 Author: Christopher Byrne <salah.coronya <AT> gmail <DOT> com> AuthorDate: Thu Jan 15 01:27:07 2026 +0000 Commit: Arsen Arsenović <arsen <AT> gentoo <DOT> org> CommitDate: Fri Jan 16 21:11:21 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d347172b
sys-block/nbdkit: add 1.46.0 Closes: https://bugs.gentoo.org/955537 Closes: https://bugs.gentoo.org/966386 Signed-off-by: Christopher Byrne <salah.coronya <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/45382 Signed-off-by: Arsen Arsenović <arsen <AT> gentoo.org> sys-block/nbdkit/Manifest | 1 + .../nbdkit/files/nbdkit-1.46.0-which-hunt.patch | 13 ++ sys-block/nbdkit/nbdkit-1.46.0.ebuild | 132 +++++++++++++++++++++ 3 files changed, 146 insertions(+) diff --git a/sys-block/nbdkit/Manifest b/sys-block/nbdkit/Manifest index 111abae667b1..8805ca58fbe3 100644 --- a/sys-block/nbdkit/Manifest +++ b/sys-block/nbdkit/Manifest @@ -3,3 +3,4 @@ DIST nbdkit-1.36.1.tar.gz 2400838 BLAKE2B afbfbda18122b17cbcdcc5b3a04ab37b7dffb1 DIST nbdkit-1.42.0.tar.gz 2591226 BLAKE2B ee92187d3697c45289f0f1872bd39bce04c64c88b7c8e0551588db704062c699d2996ee729b50a526527107e899e83c09871990ef080416c56f18d9e65ab3a19 SHA512 c8360fc2d9e6806ab241dcd61da82f52a881dd394d2e6c8c5372d4920f0751fe20dfe9bf45ff35c34cd1e12fd35d2b7dcf17374387805ff6cdec599c543c6bdc DIST nbdkit-1.44.1.tar.gz 2648353 BLAKE2B 5c930a325669c20142e9a4f11d5d115791c1d6f75fb4b9c8e2994223eb7b620a43903b9e8608de67ec490a832207a0270415af36865f0db2a63db12187666a93 SHA512 150a31ca7f64b76a4e4cc90d077e88531458f2766c0bb1f6f1ae23176d5c55a2e4dab61be58bd92b166e67fe70b67c9458a04d29978cbb1b89a6fa8ebca4617d DIST nbdkit-1.44.3.tar.gz 2656054 BLAKE2B 9c63ac0a70e1398789609d68b854ddaea3ce24fb5335f6378833c72903d03a10446418f68282d065bc0233244bb170103a142f8e8508d6f7f0dc0b499feb7b03 SHA512 5809c11dd5bf73efd0ce92076647ece61af856f01f6a5e61ac9cddcd50de90e9d8b51ef1d91adfda075d74a8236972457ea3efa7ff1ea5ee7f2f11ba943c9ed7 +DIST nbdkit-1.46.0.tar.gz 2739966 BLAKE2B 38a2c98a90b4bfaa594b6bbbc0db59971290c6f5aa4ca7b8c317c910bfaa6b2ea7cad9c6e4c37c4288d82e03c1854c7e23d70f4ef1d4460d20111dc2ffa446d8 SHA512 ed225bdbd5c1e96b40ed0493f72173853cedafc9ada2296e6418021d4e3f2e6732dbbb764d24baf6263f4b07c3868b05207518d34667fe68c7324360fc3f5254 diff --git a/sys-block/nbdkit/files/nbdkit-1.46.0-which-hunt.patch b/sys-block/nbdkit/files/nbdkit-1.46.0-which-hunt.patch new file mode 100644 index 000000000000..b5fa9ba79493 --- /dev/null +++ b/sys-block/nbdkit/files/nbdkit-1.46.0-which-hunt.patch @@ -0,0 +1,13 @@ +diff --git a/configure.ac b/configure.ac +index 4d548de1..38531960 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -205,7 +205,7 @@ AC_PROG_RANLIB + dnl Bash must be at least version 4. If it is too old, fail hard + dnl with a good diagnostic. Note macOS ships an ancient version + dnl of bash (https://gitlab.com/nbdkit/nbdkit/-/issues/21) +-bash=`which bash` ++bash=$(command -v bash) + AC_MSG_CHECKING([for the major version of $bash]) + bash_major=`bash -c 'echo ${BASH_VERSINFO:-0}'` + AC_MSG_RESULT([$bash_major]) diff --git a/sys-block/nbdkit/nbdkit-1.46.0.ebuild b/sys-block/nbdkit/nbdkit-1.46.0.ebuild new file mode 100644 index 000000000000..06701d481529 --- /dev/null +++ b/sys-block/nbdkit/nbdkit-1.46.0.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) + +inherit autotools bash-completion-r1 optfeature python-single-r1 + +DESCRIPTION="NBD server with stable plugin ABI and permissive license" +HOMEPAGE="https://gitlab.com/nbdkit/nbdkit" +SRC_URI="https://download.libguestfs.org/nbdkit/$(ver_cut 1-2)-stable/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~loong ~ppc64 ~sparc ~x86" +IUSE=" + curl ext2 nbd gnutls libguestfs libssh libvirt lzma selinux python + torrent valgrind zlib zlib-ng zstd +" + +RDEPEND=" + virtual/libiconv + selinux? ( sys-libs/libselinux ) + gnutls? ( net-libs/gnutls:= ) + curl? ( net-misc/curl ) + libssh? ( net-libs/libssh:=[sftp] ) + libvirt? ( app-emulation/libvirt:= ) + zlib? ( virtual/zlib:= ) + zlib-ng? ( sys-libs/zlib-ng ) + nbd? ( sys-libs/libnbd ) + lzma? ( app-arch/xz-utils ) + zstd? ( app-arch/zstd:= ) + libguestfs? ( app-emulation/libguestfs:= ) + ext2? ( sys-fs/e2fsprogs ) + torrent? ( net-libs/libtorrent-rasterbar:= ) + python? ( ${PYTHON_DEPS} ) +" +DEPEND=" + ${RDEPEND} + valgrind? ( dev-debug/valgrind ) +" +BDEPEND=" + dev-lang/perl + virtual/pkgconfig +" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +PATCHES=( "${FILESDIR}/${PN}-1.46.0-which-hunt.patch" ) + +src_prepare() { + default + + # TODO(arsen): This test fails for some reason. + cat <<-HACK > tests/test-file-extents.sh || die + #!/bin/sh + echo Gentoo: This test is skipped + exit 77 + HACK + + eautoreconf +} + +src_configure() { + local myeconfargs=( + --with-extra=Gentoo + + --with-iconv + --with-manpages + + $(use_with selinux) + $(use_with gnutls) + $(use_with curl) + $(use_with libvirt) + $(use_with zlib) + $(use_with zlib-ng) + $(use_with nbd libnbd) + $(use_with lzma liblzma) + $(use_with zstd libzstd) + $(use_with libguestfs) + $(use_with ext2) + $(use_with libssh ssh) + $(use_enable torrent) + $(use_enable valgrind) + + --disable-linuxdisk # Not in Gentoo. + --disable-libfuzzer # Should not be used normally according to upstream + --without-libblkio # Not in Gentoo. + --without-bash-completions # Handled manually. + + # TODO(arsen): Bindings left out + --disable-perl + # salahx: Add python support + $(use_enable python) + --disable-ocaml + --disable-rust + --disable-tcl + --disable-lua + --disable-golang + + # This just enabled a few code paths with no extra library + # dependencies, but it does have an extra xorriso runtime + # dependency. Seeing as it's optional, and it conflates BDEPEND + # and RDEPEND; I think it's okay to just specify that it uses + # XORRISO installed as xorriso. Maybe the user should be able + # to override this in the future if they prefer one of the other + # ISOPROGs? + --with-iso + ac_cv_prog_XORRISO=xorriso + + # Involves proprietary code and a dlopen mess, see + # plugins/vddk/README.VDDK. + --disable-vddk + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die + dobashcomp bash-completion/nbdkit +} + +pkg_postinst() { + optfeature "virtual ISO plugin via xorriso" dev-libs/libisoburn + if use python; then + optfeature "Amazon S3 support" dev-python/boto3 + fi +}
