mirror of
https://github.com/aviallon/nixos-lib.git
synced 2026-04-05 17:27:50 +00:00
[Boot/Packages/Kernel] Add kvdo kernel module
This commit is contained in:
parent
6b5f69bece
commit
c25820247c
3 changed files with 59 additions and 0 deletions
53
packages/kvdo.nix
Normal file
53
packages/kvdo.nix
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
{ 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;
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue