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
+}

Reply via email to