Proposal: Providing ZFS as DKMS #12
Labels
No Label
Kind/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: sig_kernel/meta#12
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Let met start with I am not a lawyer.
ZFS' CDDL license forbids from anyone distributing ZFS kernel module as a binary. The workaround to this is distributing ZFS kernel-space code as DKMS and user-space utilities as compiled binaries. Almost everyone other than Ubuntu does this.
One of Oracle's representative did say that shipping compiled kernel modules is okay because "We didn't sue Canonical for this." Reference: RHEL Panel Discussion at FOSSY 2023, at timestamp
37:30
.And the OpenZFS developers already do that for
el8
andel9
. But that's done only for x86_64. As a result, folks that want to use ZFS with Rocky Linux, on architectures like AArch64, need to switch to Ubuntu/Debian.I'd like if we did something to tackle this and documented it. I'd also like to inform our sponsors like 45Drives about it so they can also update their documentation likewise.
A few days ago, when I watched the linked video, I created a COPR repository for ZFS and built packages, installed on my Rock 5B and ran the included ZFS test (part of the
zfs-test
package). And, the test passed. The SPEC files are already available in the ZFS repository, inside therpm/redhat
directory as.spec.ac
files. All we need to do is replace strings@[A-Z]+@
with appropriate values and voila, we have a usable SPEC file. No build dependencies. Only runtime dependency is thedkms
package, which is already provided by EPEL. Not sure if we should providedkms
too, might be good, but we can also just let users know to enable EPEL for this one package.I am willing to perform maintenance of all ZFS packages on all architectures, given I get virtual/physical access to a machine with said architecture. I already have two AArch64 SBCs, thanks to RESF.
I see that this has the following advantages for everyone: