mirror of
https://github.com/aviallon/nixos-lib.git
synced 2026-04-06 17:57:50 +00:00
53 lines
1.4 KiB
Nix
53 lines
1.4 KiB
Nix
{ stdenv, lib, fetchFromGitHub, kernel }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "kvdo";
|
|
|
|
_tag = "8.1.1.371";
|
|
version = "${_tag}-${kernel.version}";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "dm-vdo";
|
|
repo = "kvdo";
|
|
rev = "${_tag}";
|
|
sha256 = "sha256:1nwprbyql5vzhhgl2zmgnp5ax50ys7crgq8ff11zr8fhcna4fmmw";
|
|
};
|
|
|
|
nativeBuildInputs = kernel.moduleBuildDependencies;
|
|
|
|
KERNEL_DIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
|
|
|
|
enableParallelBuilding = true;
|
|
dontConfigure = true;
|
|
|
|
MAKEFLAGS = with lib; concatStringsSep " " (
|
|
[]
|
|
++ optional enableParallelBuilding "-j$(nproc)"
|
|
++ optional enableParallelBuilding "-l$(nproc)"
|
|
);
|
|
|
|
buildPhase = ''
|
|
BASE_DIR=$(pwd)
|
|
make -C ${KERNEL_DIR} M=$BASE_DIR/uds modules
|
|
make -C ${KERNEL_DIR} M=$BASE_DIR/vdo \
|
|
KBUILD_EXTRA_SYMBOLS=$BASE_DIR/uds/Module.symvers modules
|
|
'';
|
|
|
|
installPhase = ''
|
|
modDir=$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/block/
|
|
mkdir -p $modDir
|
|
for d in uds vdo; do
|
|
mv -v $d/*.ko $modDir/
|
|
done
|
|
'';
|
|
|
|
hardeningDisable = [ "pic" ];
|
|
|
|
meta = with lib; {
|
|
description = "A pair of kernel modules which provide pools of deduplicated and/or compressed block storage";
|
|
homepage = "https://github.com/dm-vdo/kvdo";
|
|
license = licenses.gpl2Only;
|
|
# maintainers = [ maintainers.makefu ];
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|