all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: raid5atemyhomework via Guix-patches via <guix-patches@gnu.org>
To: Danny Milosavljevic <dannym@scratchpost.org>
Cc: 45403@debbugs.gnu.org
Subject: [bug#45403] [PATCH] gnu: zfs: Split into packages specific for each of our major supported kernel versions.
Date: Mon, 04 Jan 2021 16:32:18 +0000	[thread overview]
Message-ID: <IsCov-Ex92Awjxw9YbUcZFuQS3cdOS4V5rhK8P3ZijCm6YCRjS5eUCwJpWW_d1lyZao9LqejzEcKpC_A0EW88e00hoaawAaMY_EwgMtlC_Q=@protonmail.com> (raw)
In-Reply-To: <gSyEfBfe8jy1gzBjq_Mo6YLPvI3rz9ent6fT0ePZDBX2ktrMhOUhjTCB5FRUjQhVsYla9WVBeTwXspntIpjqnDTMvcGCNaJtZqZOLZymFIo=@protonmail.com>



> Here's another alternative:
>
> -   Remove the separate "module" output and put the `.ko` file in the "out" output.
> -   Create a separate `zfs-guix-tools` which provides `zpool`, `zfs`, `zed`, `arc_summary`, `arcstat`, `dbufstat`, `raidz_test`, `zgenhostid`, `zvol_wait`, `fsck.zfs`, `mount.zfs`, `zdb`, `zhack`, `zinject`, `zstreamdump`, `ztest`.
>     -   What the provided binaries do is:
>         -   It looks at `/run/booted-system/kernel/manifest` and looks for a `"zfs"` package.
>         -   It `exec`s into the corresponding file in the `/gnu/store` for that package.
>
>             This way, we can have a separate package for ZFS userspace tools, which just calls the corresponding tools in the actual ZFS that gets installed.
>             It's somewhat magical, though.
>

Unfortunately, this confounds `bash-completion`.  We want the bash-completion from the actual compiled ZFS, not the shim `zfs-guix-tools`.  We could try digging for it too in the `kernel/manifest`, but that just adds more complexity and maintenance headaches.

It's also an extra layer of complexity and maintenance burden to create this shim wrapper that digs through your kernel manifest to look for the userland tools you need to manage ZFS in the same package that contains the actual ZFS kernel module.  I think it's better to just expose a `make-zfs-package` that overrides the `#:linux` and creates a new package that you can install in `(packages ...)` **and** in `(kernel-loadable-modules ...)`.

See https://issues.guix.gnu.org/45643 for my current latest patchset.

Thanks
raid5atemyhomework




  reply	other threads:[~2021-01-04 16:33 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-24 10:59 [bug#45403] [PATCH] gnu: zfs: Split into packages specific for each of our major supported kernel versions raid5atemyhomework via Guix-patches via
2020-12-24 20:41 ` Leo Famulari
2020-12-25  1:12 ` raid5atemyhomework via Guix-patches via
2020-12-25  4:09   ` Tobias Geerinckx-Rice via Guix-patches via
2021-01-04 13:58     ` Danny Milosavljevic
2021-01-04 15:49       ` raid5atemyhomework via Guix-patches via
2021-01-04 16:07         ` raid5atemyhomework via Guix-patches via
2021-01-04 16:32           ` raid5atemyhomework via Guix-patches via [this message]
2021-01-08 15:50 ` bug#45403: " raid5atemyhomework via Guix-patches via

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='IsCov-Ex92Awjxw9YbUcZFuQS3cdOS4V5rhK8P3ZijCm6YCRjS5eUCwJpWW_d1lyZao9LqejzEcKpC_A0EW88e00hoaawAaMY_EwgMtlC_Q=@protonmail.com' \
    --to=guix-patches@gnu.org \
    --cc=45403@debbugs.gnu.org \
    --cc=dannym@scratchpost.org \
    --cc=raid5atemyhomework@protonmail.com \
    /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.