unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: raid5atemyhomework via Guix-patches via <guix-patches@gnu.org>
To: "45592@debbugs.gnu.org" <45592@debbugs.gnu.org>
Subject: [bug#45592] [PATCH] gnu, doc: Create and document procedure to compile ZFS for specific kernel.
Date: Sat, 02 Jan 2021 19:08:37 +0000	[thread overview]
Message-ID: <iw61nsbA5zgH5y3Y-Nd57Ksi7WjFLfcikt4RyBpoPqKZtRQzunGdOF1ncaYvotX0M0ZKDyMK1ZdMMxBJ8uJzSj7NT9FHSjCJ0V3umMf-iu8=@protonmail.com> (raw)
In-Reply-To: <csLixSpvfTY-vs3RfQNdknB_I-C_czObIMePUaUwpH3SJ_5YMi2LxZk2WDVk7WSvmz4uF9jGKV9JNtAcfd477nVjosEM110HvkcWYMkElsA=@protonmail.com>

An alternative interface for installing ZFS would be something like this:

@deffn (Scheme Procedure) install-zfs-on-operating-system @var{kernel} @var{base-operating-system}
Modifies the given @code{base-operating-system} to include support for ZFS pools and filesystems.
The operating system kernel will be forced to the given @code{kernel}, and a kernel-specific
version of the @code{zfs} package will be compiled and loaded into the operating system at startup.
The userland tools for ZFS will also be globally installed.
@end deffn

@lisp
(use-package-modules
  ; @dots{}
  linux
  file-systems)

;; @dots{}

(install-zfs-on-operating-system
  linux-libre-5.4
  (operating-system
    ;; @dots{}
    ))
@end lisp

This reduces the number of modifications that the end-user has to make in the configuration file, but at the cost of requiring an extra layer of indents.

Here;s a sketch of what it would be like:

```scheme
(define-public (install-zfs-on-operating-system kernel base-operating-system)

  (define system-zfs (make-zfs-package kernel))

  (operating-system
    (inherit base-operating-system)
    (kernel kernel)
    (kernel-loadable-modules (cons (list system-zfs "module")
                                   (operating-system-kernel-loadable-modules base-operating-system)))
    (packages (cons system-zfs (operating-system-packages base-operating-system)))
    (services (cons (service zfs-loader-service-type system-zfs)
                    (operating-system-services base-operating-system)))
    (location (operating-system-location base-operating-system))))
```




  reply	other threads:[~2021-01-02 19:09 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-01 12:34 [bug#45592] [PATCH] gnu, doc: Create and document procedure to compile ZFS for specific kernel raid5atemyhomework via Guix-patches via
2021-01-01 18:28 ` raid5atemyhomework via Guix-patches via
2021-01-02 10:22   ` raid5atemyhomework via Guix-patches via
2021-01-02 18:32     ` raid5atemyhomework via Guix-patches via
2021-01-02 19:08       ` raid5atemyhomework via Guix-patches via [this message]
2021-01-08 15:51 ` bug#45592: " 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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to='iw61nsbA5zgH5y3Y-Nd57Ksi7WjFLfcikt4RyBpoPqKZtRQzunGdOF1ncaYvotX0M0ZKDyMK1ZdMMxBJ8uJzSj7NT9FHSjCJ0V3umMf-iu8=@protonmail.com' \
    --to=guix-patches@gnu.org \
    --cc=45592@debbugs.gnu.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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).