-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
-dmks RPM packages require ksh in 0.7.0 #6467
Comments
You are spot on here:
If desired we could exclude the test suite from the dkms package with something like this: diff --git a/rpm/generic/zfs-dkms.spec.in b/rpm/generic/zfs-dkms.spec.in
index e432bc4..d438a5f 100644
--- a/rpm/generic/zfs-dkms.spec.in
+++ b/rpm/generic/zfs-dkms.spec.in
@@ -45,6 +45,7 @@ fi
%files
%defattr(-,root,root)
+%exclude /usr/src/%{module}-%{version}/tests
/usr/src/%{module}-%{version}
%post |
We should really exclude anything which isn't a kmod. The |
This problem will become more annoying with Fedora 27 (currently still in beta). There, the |
@kkretschmer does disabling automatic dependency generation avoid the issue. This should be fine as a workaround for the zfs-dkms package. diff --git a/rpm/generic/zfs-dkms.spec.in b/rpm/generic/zfs-dkms.spec.in
index f6de492..73a774b 100644
--- a/rpm/generic/zfs-dkms.spec.in
+++ b/rpm/generic/zfs-dkms.spec.in
@@ -27,6 +27,7 @@ Requires: gcc, make, perl
Requires: kernel-devel
%endif
Provides: %{module}-kmod = %{version}
+AutoReqProv: no
%description
This package contains the dkms ZFS kernel modules. |
Yes, it does. I applied this change to zfs-0.7.3, rebuilt rpms and zfs-dkms now installs without dependency problems. Output of diff --git a/requires.orig b/requires
index df660a7..6f76383 100644
--- a/requires.orig
+++ b/requires
@@ -1,21 +1,10 @@
-/bin/bash
-/bin/ksh
-/bin/sed
/bin/sh
/bin/sh
-/bin/sh
-/usr/bin/env
-/usr/bin/python
dkms >= 2.2.0.3
gcc
kernel-devel
make
perl
-perl(:VERSION) >= 5.0.0
-perl(Getopt::Std)
-perl(IO::File)
-perl(strict)
-perl(warnings)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1 |
Excluding
EDIT: Just tested Fedora27
|
Sorry, I probably made a mistake in my test of the diff --git a/rpm/generic/zfs-dkms.spec.in b/rpm/generic/zfs-dkms.spec.in
index f6de49297..5deba1551 100644
--- a/rpm/generic/zfs-dkms.spec.in
+++ b/rpm/generic/zfs-dkms.spec.in
@@ -51,6 +51,7 @@ fi
%files
%defattr(-,root,root)
+%exclude /usr/src/%{module}-%{version}/tests
/usr/src/%{module}-%{version}
%post Diffed output of diff --git a/requires.orig b/requires.exclude
index ba43c66..093367f 100644
--- a/requires.orig
+++ b/requires.exclude
@@ -1,5 +1,4 @@
auto: /bin/bash
-auto: /bin/ksh
auto: /bin/sed
post,interp: /bin/sh
preun,interp: /bin/sh |
So the trade off with using Alternately, disabling the automatic dependency generation and explicitly listing the dependencies allows for the entire package to be buildable from the dkms directory. Now how useful that is I'd say is debatable. @loli10K @kkretschmer do you have a preference? |
I personally have only ever built packages from a git working tree and used the files installed by the zfs-dkms package only for the |
I'm leaning toward the
|
Alright, let's go with the |
@behlendorf please do, it's past midnight here and i was going to take a nap; i don't think i'll be able to stay awake for much longer, sorry. |
By default additional dependencies are generated automatically for packages. This is normally a good thing because it helps ensure things just work. It doesn't make sense for the DKMS package which requires minimal dependencies that can be easily listed. Signed-off-by: Brian Behlendorf <[email protected]> Issue openzfs#6467
Done, #6835. |
By default additional dependencies are generated automatically for packages. This is normally a good thing because it helps ensure things just work. It doesn't make sense for the DKMS package which requires minimal dependencies that can be easily listed. Reviewed-by: George Melikov <[email protected]> Reviewed-by: loli10K <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes openzfs#6467 Closes openzfs#6835
By default additional dependencies are generated automatically for packages. This is normally a good thing because it helps ensure things just work. It doesn't make sense for the DKMS package which requires minimal dependencies that can be easily listed. Reviewed-by: George Melikov <[email protected]> Reviewed-by: loli10K <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes openzfs#6467 Closes openzfs#6835
By default additional dependencies are generated automatically for packages. This is normally a good thing because it helps ensure things just work. It doesn't make sense for the DKMS package which requires minimal dependencies that can be easily listed. Reviewed-by: George Melikov <[email protected]> Reviewed-by: loli10K <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes openzfs#6467 Closes openzfs#6835
System information
Describe the problem you're observing
Installing the 0.7.0 dkms RPMs requires /bin/ksh, the 0.6.x versions did not. From a cursory glance at the .spec file it's not immediately obvious to me where this dependency comes from, but it might be that rpmbuild picks up the test case files. This is mostly a cosmetic issue, tbh.
The text was updated successfully, but these errors were encountered: