zfs: 0.7.13 -> 0.8.0
Same as zfsUnstable for the moment. We still keep the zfsUnstable expression as we likely need it in the near future again. Also remove spl since it is no longer needed.
This commit is contained in:
parent
2cca7180c1
commit
11b8a5f20e
@ -24,11 +24,9 @@ let
|
||||
kernel = config.boot.kernelPackages;
|
||||
|
||||
packages = if config.boot.zfs.enableUnstable then {
|
||||
spl = null;
|
||||
zfs = kernel.zfsUnstable;
|
||||
zfsUser = pkgs.zfsUnstable;
|
||||
} else {
|
||||
spl = kernel.spl;
|
||||
zfs = kernel.zfs;
|
||||
zfsUser = pkgs.zfs;
|
||||
};
|
||||
@ -325,8 +323,8 @@ in
|
||||
virtualisation.lxd.zfsSupport = true;
|
||||
|
||||
boot = {
|
||||
kernelModules = [ "zfs" ] ++ optional (!cfgZfs.enableUnstable) "spl";
|
||||
extraModulePackages = with packages; [ zfs ] ++ optional (!cfgZfs.enableUnstable) spl;
|
||||
kernelModules = [ "zfs" ];
|
||||
extraModulePackages = with packages; [ zfs ];
|
||||
};
|
||||
|
||||
boot.initrd = mkIf inInitrd {
|
||||
|
@ -1,61 +0,0 @@
|
||||
{ fetchFromGitHub, stdenv, autoreconfHook, coreutils, gawk
|
||||
, fetchpatch
|
||||
# Kernel dependencies
|
||||
, kernel
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
assert kernel != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "spl-${version}-${kernel.version}";
|
||||
version = "0.7.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zfsonlinux";
|
||||
repo = "spl";
|
||||
rev = "spl-${version}";
|
||||
sha256 = "1rzqgiszy8ad2gx20577azp1y5jgad0907slfzl5y2zb05jgaipa";
|
||||
};
|
||||
|
||||
patches = [ ./install_prefix.patch ];
|
||||
|
||||
# Backported fix for 0.7.13 to build with 5.1, please remove when updating to 0.7.14
|
||||
postPatch = optionalString (versionAtLeast kernel.version "5.1") ''
|
||||
sed -i 's/get_ds()/KERNEL_DS/g' module/spl/spl-vnode.c
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook ] ++ kernel.moduleBuildDependencies;
|
||||
|
||||
hardeningDisable = [ "fortify" "stackprotector" "pic" ];
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid hostid
|
||||
substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin"
|
||||
substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
|
||||
substituteInPlace ./module/splat/splat-linux.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--with-config=kernel"
|
||||
"--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
|
||||
"--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
|
||||
|
||||
longDescription = ''
|
||||
This kernel module is a porting layer for ZFS to work inside the linux
|
||||
kernel.
|
||||
'';
|
||||
|
||||
homepage = http://zfsonlinux.org/;
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ jcumming wizeman fpletz globin ];
|
||||
};
|
||||
}
|
@ -1,168 +0,0 @@
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 4977448..ac17217 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -12,10 +12,10 @@ endif
|
||||
if CONFIG_KERNEL
|
||||
SUBDIRS += module
|
||||
|
||||
-extradir = @prefix@/src/spl-$(VERSION)
|
||||
+extradir = @prefix@/libexec/spl
|
||||
extra_HEADERS = spl.release.in spl_config.h.in
|
||||
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/$(LINUX_VERSION)
|
||||
+kerneldir = @prefix@/libexec/spl/$(LINUX_VERSION)
|
||||
nodist_kernel_HEADERS = spl.release spl_config.h module/$(LINUX_SYMBOLS)
|
||||
endif
|
||||
|
||||
diff --git a/include/Makefile.am b/include/Makefile.am
|
||||
index 3200222..4a47aaa 100644
|
||||
--- a/include/Makefile.am
|
||||
+++ b/include/Makefile.am
|
||||
@@ -13,6 +13,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include
|
||||
+kerneldir = @prefix@/libexec/spl/include
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/fs/Makefile.am b/include/fs/Makefile.am
|
||||
index e0da4b3..d6d7af0 100644
|
||||
--- a/include/fs/Makefile.am
|
||||
+++ b/include/fs/Makefile.am
|
||||
@@ -8,6 +8,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/fs
|
||||
+kerneldir = @prefix@/libexec/spl/include/fs
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/linux/Makefile.am b/include/linux/Makefile.am
|
||||
index 712e94e..4af9fb7 100644
|
||||
--- a/include/linux/Makefile.am
|
||||
+++ b/include/linux/Makefile.am
|
||||
@@ -18,6 +18,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/linux
|
||||
+kerneldir = @prefix@/libexec/spl/include/linux
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/rpc/Makefile.am b/include/rpc/Makefile.am
|
||||
index cfc8246..4fbd33d 100644
|
||||
--- a/include/rpc/Makefile.am
|
||||
+++ b/include/rpc/Makefile.am
|
||||
@@ -9,6 +9,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/rpc
|
||||
+kerneldir = @prefix@/libexec/spl/include/rpc
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/sharefs/Makefile.am b/include/sharefs/Makefile.am
|
||||
index 10e7093..febecdf 100644
|
||||
--- a/include/sharefs/Makefile.am
|
||||
+++ b/include/sharefs/Makefile.am
|
||||
@@ -8,6 +8,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/sharefs
|
||||
+kerneldir = @prefix@/libexec/spl/include/sharefs
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/sys/Makefile.am b/include/sys/Makefile.am
|
||||
index 73c4a84..31a9f50 100644
|
||||
--- a/include/sys/Makefile.am
|
||||
+++ b/include/sys/Makefile.am
|
||||
@@ -107,7 +107,7 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/sys
|
||||
+kerneldir = @prefix@/libexec/spl/include/sys
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
|
||||
diff --git a/include/sys/fm/Makefile.am b/include/sys/fm/Makefile.am
|
||||
index 2821cbe..a84ce8e 100644
|
||||
--- a/include/sys/fm/Makefile.am
|
||||
+++ b/include/sys/fm/Makefile.am
|
||||
@@ -9,6 +9,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/sys/fm
|
||||
+kerneldir = @prefix@/libexec/spl/include/sys/fm
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/sys/fs/Makefile.am b/include/sys/fs/Makefile.am
|
||||
index 581083e..0c35fb7 100644
|
||||
--- a/include/sys/fs/Makefile.am
|
||||
+++ b/include/sys/fs/Makefile.am
|
||||
@@ -8,6 +8,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/sys/fs
|
||||
+kerneldir = @prefix@/libexec/spl/include/sys/fs
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/util/Makefile.am b/include/util/Makefile.am
|
||||
index e2bf09f..3f5d6ce 100644
|
||||
--- a/include/util/Makefile.am
|
||||
+++ b/include/util/Makefile.am
|
||||
@@ -9,6 +9,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/util
|
||||
+kerneldir = @prefix@/libexec/spl/include/util
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
diff --git a/include/vm/Makefile.am b/include/vm/Makefile.am
|
||||
index 7faab0a..8148b3d 100644
|
||||
--- a/include/vm/Makefile.am
|
||||
+++ b/include/vm/Makefile.am
|
||||
@@ -10,6 +10,6 @@ USER_H =
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
|
||||
if CONFIG_KERNEL
|
||||
-kerneldir = @prefix@/src/spl-$(VERSION)/include/vm
|
||||
+kerneldir = @prefix@/libexec/spl/include/vm
|
||||
kernel_HEADERS = $(KERNEL_H)
|
||||
endif
|
||||
--- a/module/Makefile.in
|
||||
+++ b/module/Makefile.in
|
||||
@@ -21,22 +21,22 @@
|
||||
modules_install:
|
||||
@# Install the kernel modules
|
||||
$(MAKE) -C @LINUX_OBJ@ M=`pwd` $@ \
|
||||
- INSTALL_MOD_PATH=$(DESTDIR)$(INSTALL_MOD_PATH) \
|
||||
+ INSTALL_MOD_PATH=@prefix@/$(INSTALL_MOD_PATH) \
|
||||
INSTALL_MOD_DIR=$(INSTALL_MOD_DIR) \
|
||||
KERNELRELEASE=@LINUX_VERSION@
|
||||
@# Remove extraneous build products when packaging
|
||||
- kmoddir=$(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@; \
|
||||
- if [ -n "$(DESTDIR)" ]; then \
|
||||
+ kmoddir=@prefix@/$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@; \
|
||||
+ if [ -n "@prefix@" ]; then \
|
||||
find $$kmoddir -name 'modules.*' | xargs $(RM); \
|
||||
fi
|
||||
- sysmap=$(DESTDIR)$(INSTALL_MOD_PATH)/boot/System.map-@LINUX_VERSION@; \
|
||||
+ sysmap=@prefix@/$(INSTALL_MOD_PATH)/boot/System.map-@LINUX_VERSION@; \
|
||||
if [ -f $$sysmap ]; then \
|
||||
depmod -ae -F $$sysmap @LINUX_VERSION@; \
|
||||
fi
|
||||
|
||||
modules_uninstall:
|
||||
@# Uninstall the kernel modules
|
||||
- kmoddir=$(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@
|
||||
+ kmoddir=@prefix@/$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@
|
||||
list='$(subdir-m)'; for subdir in $$list; do \
|
||||
$(RM) -R $$kmoddir/$(INSTALL_MOD_DIR)/$$subdir; \
|
||||
done
|
@ -9,7 +9,7 @@
|
||||
, gawk, gnugrep, gnused, systemd
|
||||
|
||||
# Kernel dependencies
|
||||
, kernel ? null, spl ? null
|
||||
, kernel ? null
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
@ -20,10 +20,8 @@ let
|
||||
common = { version
|
||||
, sha256
|
||||
, extraPatches
|
||||
, spl
|
||||
, rev ? "zfs-${version}"
|
||||
, isUnstable ? false
|
||||
, isLegacyCrypto ? false
|
||||
, incompatibleKernelVersion ? null }:
|
||||
if buildKernel &&
|
||||
(incompatibleKernelVersion != null) &&
|
||||
@ -52,10 +50,8 @@ let
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook nukeReferences ]
|
||||
++ optional buildKernel (kernel.moduleBuildDependencies ++ [ perl ]);
|
||||
buildInputs =
|
||||
optionals buildKernel [ spl ]
|
||||
++ optionals buildUser [ zlib libuuid python3 attr ]
|
||||
++ optionals (buildUser && (isUnstable || isLegacyCrypto)) [ openssl ]
|
||||
buildInputs = optionals buildUser [ zlib libuuid python3 attr ]
|
||||
++ optionals (buildUser) [ openssl ]
|
||||
++ optional stdenv.hostPlatform.isMusl [ libtirpc ];
|
||||
|
||||
# for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
|
||||
@ -107,8 +103,6 @@ let
|
||||
] ++ optionals buildKernel [
|
||||
"--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
|
||||
"--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||
] ++ optionals (buildKernel && spl != null) [
|
||||
"--with-spl=${spl}/libexec/spl"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
@ -162,19 +156,13 @@ in {
|
||||
# incompatibleKernelVersion = "4.20";
|
||||
|
||||
# this package should point to the latest release.
|
||||
version = "0.7.13";
|
||||
version = "0.8.0";
|
||||
|
||||
sha256 = "1l77bq7pvc54vl15pnrjd0njgpf00qjzy0x85dpfh5jxng84x1fb";
|
||||
sha256 = "1lqb9q2im5bbm4l8kfb31cb6rvy37h5ni6rnqlki127ynilymkj8";
|
||||
|
||||
extraPatches = [
|
||||
# in case this gets out of date, just send Mic92 a pull request!
|
||||
(fetchpatch {
|
||||
url = "https://github.com/Mic92/zfs/commit/cf23c1d38bfc698a8a729fc0c5f9ca41591f4d95.patch";
|
||||
sha256 = "14v3x9ipvg2qd1vyf70nv909jd5zdxlsw5y8k60pfyvwm7g80wr5";
|
||||
})
|
||||
./build-fixes-unstable.patch
|
||||
];
|
||||
|
||||
inherit spl;
|
||||
};
|
||||
|
||||
zfsUnstable = common rec {
|
||||
@ -189,10 +177,7 @@ in {
|
||||
isUnstable = true;
|
||||
|
||||
extraPatches = [
|
||||
# in case this gets out of date, just send Mic92 a pull request!
|
||||
./build-fixes-unstable.patch
|
||||
];
|
||||
|
||||
spl = null;
|
||||
};
|
||||
}
|
||||
|
@ -15424,8 +15424,6 @@ in
|
||||
|
||||
sch_cake = callPackage ../os-specific/linux/sch_cake { };
|
||||
|
||||
spl = callPackage ../os-specific/linux/spl { };
|
||||
|
||||
sysdig = callPackage ../os-specific/linux/sysdig {};
|
||||
|
||||
systemtap = callPackage ../development/tools/profiling/systemtap { };
|
||||
@ -15454,7 +15452,7 @@ in
|
||||
|
||||
inherit (callPackage ../os-specific/linux/zfs {
|
||||
configFile = "kernel";
|
||||
inherit kernel spl;
|
||||
inherit kernel;
|
||||
}) zfsStable zfsUnstable;
|
||||
|
||||
zfs = zfsStable;
|
||||
|
Loading…
Reference in New Issue
Block a user