all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Kaelyn <kaelyn.alexi@protonmail.com>
To: Morgan Arnold <morgan.arnold@proton.me>
Cc: "guix-devel@gnu.org" <guix-devel@gnu.org>
Subject: Re: Status of ZFS support on Guix
Date: Wed, 02 Oct 2024 22:07:00 +0000	[thread overview]
Message-ID: <Mhb6sWzDS2N_9G3yl020kKXIWEoEvRR-Y1NcTZb4k8mVJRKKsDUB7dvIpg6FbZatgASiMXGLoy9EHspoKgLlG2LsM4CRlH6VIW7-GmAHMuI=@protonmail.com> (raw)
In-Reply-To: <1Mf47p_itnKEwds_VcYBV9aLFb3hFNvpo7mAmlDX_F0ybwguolX_1BDAff46RZ1QDIDfvl1QsZkn_hWQj-g49y-VEYksiZvsq0r8-JblNYc=@proton.me>


Hi,

On Tuesday, October 1st, 2024 at 1:23 PM, Morgan Arnold <morgan.arnold@proton.me> wrote:

> 
> 
> I asked around on the IRC channel a while ago about the status of ZFS support on Guix, and it was suggested that I ask here. I am aware of efforts made in the past to bring some rudimentary ZFS support to Guix (namely, https://issues.guix.gnu.org/45692, which appears to be quite dead), but was wondering if any new efforts have been considered. This is something which I would be very open to contributing to, as the lack of ZFS support is currently the only thing preventing me from using Guix as my main distro. It looks like there has is some general interest for better ZFS support on Guix, as evidenced by, say, https://issues.guix.gnu.org/73035.

Thank you for sharing those two issues; 45692 IIRC was the source/basis for the ZFS services in my private local channel that I've using for several years now.  I hadn't noticed 73035 yet, so I'll be looking at that soon.

There is also a couple of other issues that bring improvements related--at least tangentially-- to ZFS that are pending:

1) https://issues.guix.gnu.org/71482 which splits the ZFS userspace tools into a separate package and provides a helper function for creating a ZFS package for a specific kernel package.

2) https://issues.guix.gnu.org/55231 which adds support for including out-of-tree kernel modules in the initrd. This isn't strictly related to ZFS other than the documentation referencing ZFS in its example. The documentation patch had later been updated to include a different example of an out-of-tree module that is already packaged in Guix. I've also commented on it that I have essentially been using those patches for a number of years now.

> 
> Based on the response to 45692, I would also like to know if there is opposition to adding support for Guix, be it for philosophical or legal reasons. Assuming that no such opposition exists, 45692 seems to provide a very substantial chunk of the work which needs to be done for supporting ZFS on Guix, in particular automatic loading of the ZFS kernel module and automatic mounting of datasets. Ultimately, I would love to see support for `/' on ZFS, but based on discussions around 45692, it seems like this would be quite a bit more effort, although I must admit that I don't really understand why, other than that it involves modifying the behaviour of Shepherd earlier in the boot process. Other than examining the patches which were submitted for 45692, I assume that it would be worth looking more closely at how other filesystems are managed on Guix, although the treatment of ZFS probably necessarily differs, if just for the loading of the kernel module. As for` /' on ZFS, would a deep dive into the documentation for Shepherd be valuable in terms of understanding how to load the ZFS kernel module as early as possible? Alternatively, are there other modules in Guix that are sometimes loaded early (maybe GPU drivers? I know that they are loaded early sometimes) which might be worth examining to understand how to go about it?

I'd love to know where any opposition may be at as well. At this point I have a private channel which actually replaces much of the bootloader and initrd functionality (in part to support ZFS in the initrd using https://issues.guix.gnu.org/55231). In the past year, I actually took advantage of having basically replicated much of the initrd functionality in my channel to create a simple bootloader based on the Linux kernel (with the EFI stubloader) and a custom initrd that uses kexec to boot the actual system. It still needs a lot of polish, but has been good enough that combined with a few other small hacks and workarounds, I have several systems now booting with ZFS roots (some unencrypted, some using native encryption). I have done little to upstream most of it, or even to share what I've done, because of the seeming resistance to ZFS.

Cheers,
Kaelyn

> 
> Thanks,
> 
> Morgan


  reply	other threads:[~2024-10-02 22:34 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-01 20:23 Status of ZFS support on Guix Morgan Arnold
2024-10-02 22:07 ` Kaelyn [this message]
2024-10-03  0:18   ` Ian Eure
2024-10-03 17:23     ` Kaelyn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='Mhb6sWzDS2N_9G3yl020kKXIWEoEvRR-Y1NcTZb4k8mVJRKKsDUB7dvIpg6FbZatgASiMXGLoy9EHspoKgLlG2LsM4CRlH6VIW7-GmAHMuI=@protonmail.com' \
    --to=kaelyn.alexi@protonmail.com \
    --cc=guix-devel@gnu.org \
    --cc=morgan.arnold@proton.me \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.