commit: 575eaf112066d2e00c006dd9033e51f482fbf852
Author: Alexander Miroshnichenko <alex <AT> millerson <DOT> name>
AuthorDate: Sat Oct 4 16:12:26 2025 +0000
Commit: Alexander Miroshnichenko <alex <AT> millerson <DOT> name>
CommitDate: Sat Oct 4 16:12:26 2025 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=575eaf11
sys-fs/bcachefs-kmod: new package, add 1.31.5
Signed-off-by: Alexander Miroshnichenko <alex <AT> millerson.name>
sys-fs/bcachefs-kmod/Manifest | 2 +
sys-fs/bcachefs-kmod/bcachefs-kmod-1.31.5.ebuild | 131 +++++++++++++++++++++++
2 files changed, 133 insertions(+)
diff --git a/sys-fs/bcachefs-kmod/Manifest b/sys-fs/bcachefs-kmod/Manifest
new file mode 100644
index 0000000000..13482c665d
--- /dev/null
+++ b/sys-fs/bcachefs-kmod/Manifest
@@ -0,0 +1,2 @@
+DIST bcachefs-tools-1.31.5.tar.sign 833 BLAKE2B
05d00a24c934e9196350c0080fd00e2226eec412c27da930194c6b4080209a7cafacd671ffb08192b992a82a35295cb5a253bac6ba7d924b06a2ffd3ffd49249
SHA512
8e99bfffa1ed24f861ba64137f20aeb3d4ad553641c558ab16460c304525462062cd995bdc7528867820f8079efd913f295ad2956adcae17b0b90f20835d6ff7
+DIST bcachefs-tools-1.31.5.tar.zst 1333803 BLAKE2B
106e611f37889976cd24926f5f3f59582f0c79e22013569c12f5851eeae6089ef9d06c5f48b5414dc270bcfe55d36c20d650ce8ec9112be9d360f2f0b09a6245
SHA512
d53679ccfcc44975aab2d6cda82b82c64300f28a1d3a48ab4d6165118222a8db97b53531743aa4f0d78d380261279515118bba8b7ecfd4f963e74f217302107c
diff --git a/sys-fs/bcachefs-kmod/bcachefs-kmod-1.31.5.ebuild
b/sys-fs/bcachefs-kmod/bcachefs-kmod-1.31.5.ebuild
new file mode 100644
index 0000000000..1cfdfc7d8d
--- /dev/null
+++ b/sys-fs/bcachefs-kmod/bcachefs-kmod-1.31.5.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MODULES_KERNEL_MIN=6.16
+MODULES_INITRAMFS_IUSE=+initramfs
+MY_PN="bcachefs-tools"
+MODULE_S="module/src/${PN%-*}-${PV}"
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kentoverstreet.asc
+
+inherit flag-o-matic linux-mod-r1 toolchain-funcs unpacker verify-sig
+
+DESCRIPTION="Linux bcachefs kernel module for sys-fs/bcachefs-tools"
+HOMEPAGE="https://bcachefs.org/"
+if [[ ${PV} == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://evilpiepirate.org/git/bcachefs-tools.git"
+else
+
SRC_URI="https://evilpiepirate.org/bcachefs-tools/bcachefs-tools-${PV}.tar.zst"
+ SRC_URI+=" verify-sig? (
https://evilpiepirate.org/bcachefs-tools/bcachefs-tools-${PV}.tar.sign )"
+ S="${WORKDIR}/${P}"
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-2"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD ISC MIT Unicode-DFS-2016"
+SLOT="0"
+
+IUSE="debug verify-sig"
+
+DEPEND="~sys-fs/bcachefs-tools-${PV}"
+
+RDEPEND="${DEPEND}
+"
+
+BDEPEND=">=sys-kernel/linux-headers-6.16
+ verify-sig? ( >=sec-keys/openpgp-keys-kentoverstreet-20241012 )
+"
+pkg_setup() {
+ local CONFIG_CHECK="
+ BLOCK
+ CRC_OPTIMIZATIONS
+ EXPORTFS
+ CLOSURES
+ CRC32
+ CRC64
+ FS_POSIX_ACL
+ LZ4_COMPRESS
+ LZ4_DECOMPRESS
+ LZ4HC_COMPRESS
+ ZLIB_DEFLATE
+ ZLIB_INFLATE
+ ZSTD_COMPRESS
+ ZSTD_DECOMPRESS
+ CRYPTO_LIB_SHA256
+ CRYPTO_LIB_CHACHA
+ CRYPTO_LIB_POLY1305
+ KEYS
+ RAID6_PQ
+ XOR_BLOCKS
+ XXHASH
+ SYMBOLIC_ERRNAME
+ MIN_HEAP
+ XARRAY_MULTI
+ "
+ use amd64 && CONFIG_CHECK+="
+ CRYPTO_CHACHA20_X86_64
+ CRYPTO_POLY1305_X86_64
+ "
+ use debug && CONFIG_CHECK+="
+ DEBUG_INFO
+ FRAME_POINTER
+ !DEBUG_INFO_REDUCED
+ "
+ linux-mod-r1_pkg_setup
+}
+
+src_unpack() {
+ # Upstream signs the uncompressed tarball
+ if use verify-sig; then
+ einfo "Unpacking ${P}.tar.zst ..."
+ verify-sig_verify_detached -
"${DISTDIR}"/${MY_PN}-${PV}.tar.sign \
+ < <(zstd -fdc "${DISTDIR}"/${MY_PN}-${PV}.tar.zst | tee
>(tar -xf -))
+ assert "Unpack failed"
+ fi
+
+ if [[ ${PV} == "9999" ]]; then
+ git-r3_src_unpack
+ else
+ unpacker ${MY_PN}-${PV}.tar.zst
+ fi
+
+}
+
+src_prepare() {
+ default
+ tc-export CC
+
+ sed -i s/^VERSION=.*$/VERSION=${PV}/ Makefile || die
+ sed \
+ -e '/^CFLAGS/s:-O2::' \
+ -e '/^CFLAGS/s:-g::' \
+ -i Makefile || die
+ append-lfs-flags
+
+ emake DESTDIR="${WORKDIR}" PREFIX="/module" install_dkms
+ sed -i "s|^#define TRACE_INCLUDE_PATH .*|#define TRACE_INCLUDE_PATH
${WORKDIR}/${MODULE_S}/src/fs/bcachefs|" \
+ ../${MODULE_S}/src/fs/bcachefs/trace.h || die
+ sed -i '/mean_and_variance_test.o/Id'
../${MODULE_S}/src/fs/bcachefs/Makefile|| die
+}
+
+src_compile() {
+ local modlist=(
"bcachefs=kernel/fs/bcachefs:../${MODULE_S}:../${MODULE_S}/src/fs/bcachefs" )
+ local modargs=(
+ KDIR=${KV_OUT_DIR}
+ )
+
+ linux-mod-r1_src_compile
+}
+
+src_install() {
+ linux-mod-r1_src_install
+}
+
+pkg_postinst() {
+ linux-mod-r1_pkg_postinst
+}