nixpkgs/pkgs/by-name/bc/bcachefs-tools/kernel-module.nix
qubitnano 6bdb6c023f linuxPackages.bcachefs: support kernel 7.2
(cherry picked from commit 1e9013a7fd)
2026-07-04 13:00:00 +00:00

57 lines
1.3 KiB
Nix

bcachefs-tools:
{
lib,
stdenv,
kernelModuleMakeFlags,
kernel,
rustPlatform,
}:
stdenv.mkDerivation {
pname = "bcachefs";
version = "${kernel.version}-${bcachefs-tools.version}";
__structuredAttrs = true;
strictDeps = true;
src = bcachefs-tools.dkms;
postPatch = ''
substituteInPlace src/fs/bcachefs/Makefile \
--replace-fail '$(objtree)/vmlinux' '${kernel.dev}/vmlinux'
'';
nativeBuildInputs = kernel.moduleBuildDependencies;
enableParallelBuilding = true;
makeFlags = kernelModuleMakeFlags ++ [
"KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
"INSTALL_MOD_PATH=${placeholder "out"}"
"RUST_LIB_SRC=${rustPlatform.rustLibSrc}"
];
installPhase = ''
runHook preInstall
make -C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build M=$(pwd) modules_install "''${makeFlags[@]}" "''${installFlags[@]}"
runHook postInstall
'';
passthru = {
inherit (bcachefs-tools.passthru) tests;
};
meta = {
description = "out-of-tree bcachefs kernel module";
inherit (bcachefs-tools.meta)
homepage
downloadPage
license
maintainers
platforms
;
broken = !(lib.versionAtLeast kernel.version "6.16" && lib.versionOlder kernel.version "7.3");
};
}