From patchwork Mon Jan 4 01:02:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: raid5atemyhomework X-Patchwork-Id: 26204 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id AE5DB27BC0A; Mon, 4 Jan 2021 01:03:09 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL, SPF_HELO_PASS,T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 53A0427BC09 for ; Mon, 4 Jan 2021 01:03:09 +0000 (GMT) Received: from localhost ([::1]:55056 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kwEH6-0008HN-Ie for patchwork@mira.cbaines.net; Sun, 03 Jan 2021 20:03:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43392) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kwEH0-0008HE-Gr for guix-patches@gnu.org; Sun, 03 Jan 2021 20:03:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:55678) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kwEH0-000899-8Y for guix-patches@gnu.org; Sun, 03 Jan 2021 20:03:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kwEH0-0003Yt-6I for guix-patches@gnu.org; Sun, 03 Jan 2021 20:03:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#45643] [PATCH 0/3] Better Support for ZFS on Guix Resent-From: raid5atemyhomework Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 04 Jan 2021 01:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 45643 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45643@debbugs.gnu.org X-Debbugs-Original-To: "guix-patches@gnu.org" Received: via spool by submit@debbugs.gnu.org id=B.160972215813659 (code B ref -1); Mon, 04 Jan 2021 01:03:02 +0000 Received: (at submit) by debbugs.gnu.org; 4 Jan 2021 01:02:38 +0000 Received: from localhost ([127.0.0.1]:38991 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwEGc-0003YF-5o for submit@debbugs.gnu.org; Sun, 03 Jan 2021 20:02:38 -0500 Received: from lists.gnu.org ([209.51.188.17]:49194) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kwEGa-0003Y6-7y for submit@debbugs.gnu.org; Sun, 03 Jan 2021 20:02:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43330) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kwEGa-0008GA-1N for guix-patches@gnu.org; Sun, 03 Jan 2021 20:02:36 -0500 Received: from mail-40141.protonmail.ch ([185.70.40.141]:61963) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kwEGW-0007z5-Rx for guix-patches@gnu.org; Sun, 03 Jan 2021 20:02:35 -0500 Date: Mon, 04 Jan 2021 01:02:25 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail; t=1609722149; bh=MtqWHyTFjXNj1OdDmkAr8BW1wORE+xVii4yjgrLSxps=; h=Date:To:From:Reply-To:Subject:From; b=w1qPPJO5E51voUjL+dikvhipST8akHybLqX3vN2rKbKcmTwmLq5DTSJcKiHbZjj6P WxcSoe6U+EynhpNQQuVs6NJufstQATRLFuMmF4bqh6HUA8b6QocZGpTasOs/FUEeRJ oHXBCMiL/8i6EZt/M4o42ZCMs6tsHT4jTHKDpy1M= Message-ID: MIME-Version: 1.0 Received-SPF: pass client-ip=185.70.40.141; envelope-from=raid5atemyhomework@protonmail.com; helo=mail-40141.protonmail.ch X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: raid5atemyhomework , raid5atemyhomework via Guix-patches X-Patchwork-Original-From: raid5atemyhomework via Guix-patches via From: raid5atemyhomework X-getmail-retrieved-from-mailbox: Patches ZFS package is broken, and we should really recompile ZFS at each kernel update anyway. This patchset includes: * Patch 1: * Fixes for "util-linux" dependency which causes problems with mounting ZFS datasets. * Expose a "make-zfs-package" procedure to create kernel-specific ZFS packages as suggested here: https://issues.guix.gnu.org/45403#3 * Add a service "zfs-loader-service-type" that provisions "zfs-loader", that modprobes ZFS and automounts ZFS datasets at bootup. The latter behavior is what is expected of ZFS from other OSs, so it's best to imitate that as well. * Document how to set up and use the above. * This makes ZFS on Guix actually *possible*. Tested in a VM. * Patch 2: * Make the "file-systems" provisioning service a target similar to "user-processes", so that other services can insert themselves into "file-systems" mounting. * Make the "zfs-loader" part of the "file-systems" target if it is instantiated. * This enables /home on ZFS (previous patch is not enough as "user-homes" service is part of the "user-processes"; we need to make ZFS loading and mounting earlier). * Patch 3 * Disable checking of "device" field for declared file-systems that are of type "zfs". * Make file-systems of type "zfs" dependent on "zfs-loader" to ensure that "zfs" module is loaded and all pools are imported and known by the ZFS module. * This enables declaring ZFS datasets as (file-system ...) declarations, if the sysad wants to explicitly document the mountpoints in the configuration file rather than having ZFS manage mountpoints.