From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms1.migadu.com with LMTPS id kMyGDVoeKGZ4vwAA62LTzQ:P1 (envelope-from ) for ; Tue, 23 Apr 2024 22:47:22 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1.migadu.com with LMTPS id kMyGDVoeKGZ4vwAA62LTzQ (envelope-from ) for ; Tue, 23 Apr 2024 22:47:22 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=none ("invalid DKIM record") header.d=freakingpenguin.com header.s=x header.b=Qi2VlVlF; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1713905242; a=rsa-sha256; cv=none; b=CZ03M69scCETzD0+Hxiotsu63CN6JAKwhGkl57tgTzAZ0/zUDUuk8oAAILwATiVJPcSzGH DZUt4MAMy8AoBfjYTMNIN37SJZjj9Q9H3XB1GX2hjlb8JsvxKgqmVlU8nOaCXXfw4EAKt7 n11VTWz2OLJ6i1AsVVBvg3TsOzNelpqFAs5yNz93XTOzhA/PLJ6ZWmlTF2PJsIbnQLkLlg W9B0UNhkX4lNWFM7T9HGJYwltoj3cUfvOeRfaTMmngXXOYCa3rKboM016fhrGi68Ns7HsX 66pFCR5KqUcBcwzphcn179rW41hRBR4XMJy3LqudLgAmAGE/W+3YRiLn4ExlOA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none ("invalid DKIM record") header.d=freakingpenguin.com header.s=x header.b=Qi2VlVlF; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1713905242; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=SsDpLRx3BE0R3JQt5L0TDzv7eIc0si0ITaSyHPts9cU=; b=BGJ2DaV2/7y6Lvd4d4/K/+WCo9daHyX9IhzNGu9GJVhNekXd5i+YFKKahWPsl0i2IYktrL +tWn5BdrCpoPUP7vUhoTNw6xe1dDEOxvyep6ywCTRJgSKTHgoJoiraJhbnQsv18WVeH84m 8Z5DdeDJjYgzr7Dmi3dZ/MYhKvvKwfj/n4dSFFg/gxI+sYDFtm1rk5DvSxY9+StUIHFeyp 4AAjsRzaZ+vGPJ9HZwrd6wYuB80ML8OPwtfERvGTv7zCjpbYpxma2sybTbHQViek5HGHaV t6Dc1/t0aZ8ldEYBGxsgF1duBCkHuNYemD+6k3mim9A3tBgjZ/8qInHLV+lkbw== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id C91CD77601 for ; Tue, 23 Apr 2024 22:47:21 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rzN2U-0001Rs-S2; Tue, 23 Apr 2024 16:46:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rzN2R-0001Rb-W4 for guix-patches@gnu.org; Tue, 23 Apr 2024 16:46:52 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rzN2Q-0003GE-Ja; Tue, 23 Apr 2024 16:46:50 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rzN2c-0003B7-19; Tue, 23 Apr 2024 16:47:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#70542] [PATCH 0/4] Improve Shepherd service support for networked file systems Resent-From: Richard Sent Original-Sender: "Debbugs-submit" Resent-CC: guix@cbaines.net, dev@jpoiret.xyz, ludo@gnu.org, othacehe@gnu.org, rekado@elephly.net, zimon.toutoune@gmail.com, me@tobias.gr, guix-patches@gnu.org Resent-Date: Tue, 23 Apr 2024 20:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 70542 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 70542@debbugs.gnu.org Cc: Richard Sent , Christopher Baines , Josselin Poiret , Ludovic =?UTF-8?Q?Court=C3=A8s?= , Mathieu Othacehe , Ricardo Wurmus , Simon Tournier , Tobias Geerinckx-Rice X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: Christopher Baines , Josselin Poiret , Ludovic =?UTF-8?Q?Court=C3=A8s?= , Mathieu Othacehe , Ricardo Wurmus , Simon Tournier , Tobias Geerinckx-Rice Received: via spool by submit@debbugs.gnu.org id=B.171390518511803 (code B ref -1); Tue, 23 Apr 2024 20:47:01 +0000 Received: (at submit) by debbugs.gnu.org; 23 Apr 2024 20:46:25 +0000 Received: from localhost ([127.0.0.1]:54235 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzN1y-00033x-6k for submit@debbugs.gnu.org; Tue, 23 Apr 2024 16:46:25 -0400 Received: from lists.gnu.org ([2001:470:142::17]:35918) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzN1r-00031W-FF for submit@debbugs.gnu.org; Tue, 23 Apr 2024 16:46:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rzN1U-0000zR-6y for guix-patches@gnu.org; Tue, 23 Apr 2024 16:45:52 -0400 Received: from mail-108-mta184.mxroute.com ([136.175.108.184]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rzN1R-00034j-Sx for guix-patches@gnu.org; Tue, 23 Apr 2024 16:45:51 -0400 Received: from filter006.mxroute.com ([136.175.111.2] filter006.mxroute.com) (Authenticated sender: mN4UYu2MZsgR) by mail-108-mta184.mxroute.com (ZoneMTA) with ESMTPSA id 18f0cb5162e0003bea.001 for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Tue, 23 Apr 2024 20:45:45 +0000 X-Zone-Loop: 76b93738f303db7c0b2003857b18bc0e9844bee67037 X-Originating-IP: [136.175.111.2] DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=freakingpenguin.com; s=x; h=Content-Transfer-Encoding:MIME-Version: Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=SsDpLRx3BE0R3JQt5L0TDzv7eIc0si0ITaSyHPts9cU=; b=Qi2VlVlFZ/8JST3MbTO5oMZIH0 UD/d4ZHdiJP7sQC9xONEhWdjy9tUp4rRqygV6iwPsYxeq6HF7f3hJ+wDfW2kuk63X0XKAV/YFnNYe 8vLXSGeZpcTTVUm18M0A3HYICbVmIO7gDCTIUEpjfJ8UJK3EFH61j4ez6AZBZmF6WyKuS2Asv+Ts4 Br5KPLyYAWJ2Cd+3IaJyM/ng0+R/SNEG1bGjOzoogphV6Up6+aHYZPVAb61hwGXDRzHSb90F5U3y5 ViPhn01n1WRsUCGtlpuuI+rMWqTyft9pR9uZeC1bagG97oJuG7TTXzNCh/boV13VBLQuZiKxfW3RK Jss1Lr2w==; From: Richard Sent Date: Tue, 23 Apr 2024 16:44:47 -0400 Message-ID: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Authenticated-Id: richard@freakingpenguin.com Received-SPF: pass client-ip=136.175.108.184; envelope-from=richard@freakingpenguin.com; helo=mail-108-mta184.mxroute.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no 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+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Spam-Score: -3.39 X-Migadu-Queue-Id: C91CD77601 X-Migadu-Spam-Score: -3.39 X-Migadu-Scanner: mx10.migadu.com X-TUID: ccOlJBRCyLsO Hi Guix! This patch series aims to improve the experience when using Guix and Shepherd to manage networked file systems. Previously, operating-system file-system entries would all be started before the symbol 'file-systems was provided, which many other Shepherd services depend on. This meant that adding a networked file-system with (mount? #t) would (depending on mount-can-fail?) either halt boot due to 'user-processes (and thus 'networking) not being provisioned, or fail to mount, even though Guix contained the code to sucessfully mount that file system. Now, file system entries can specify arbitrary Shepherd symbols that other services provision. When this is done, that specific file-system entry is not mounted as part of providing 'file-systems. I considered adding a (network?) flag to the file-system record instead, but that wouldn't handle every case (say, if an Avahi .local address was used). So instead I went with the more general approach. Prior workarounds were verbose [1] and required creating a custom service entry. This method allows for reusing code already present in (gnu services base) and (gnu build file-systems). I considered splitting CIFS support into its own patch, but since the support is fairly meaningless without the preceding commits, I figured keeping it was best. This patch series resolves https://issues.guix.gnu.org/46563. Richard Sent (4): file-systems: Add requirements field to file-systems services: base: Use requirements to delay some file-systems file-systems: Add support for mounting CIFS file systems system: Do not check for CIFS file system availability doc/guix.texi | 13 ++++++++ gnu/build/file-systems.scm | 60 ++++++++++++++++++++++++++++++++----- gnu/machine/ssh.scm | 3 +- gnu/services/base.scm | 16 ++++++++-- gnu/system/file-systems.scm | 3 ++ guix/scripts/system.scm | 3 +- 6 files changed, 87 insertions(+), 11 deletions(-) base-commit: 0f68306268773f0eaa4327e1f6fdcb39442e4a34 -- 2.41.0