From: Richard Sent <richard@freakingpenguin.com>
To: 70542@debbugs.gnu.org
Cc: "Richard Sent" <richard@freakingpenguin.com>,
"Christopher Baines" <guix@cbaines.net>,
"Josselin Poiret" <dev@jpoiret.xyz>,
"Ludovic Courtès" <ludo@gnu.org>,
"Mathieu Othacehe" <othacehe@gnu.org>,
"Ricardo Wurmus" <rekado@elephly.net>,
"Simon Tournier" <zimon.toutoune@gmail.com>,
"Tobias Geerinckx-Rice" <me@tobias.gr>
Subject: [bug#70542] [PATCH 0/4] Improve Shepherd service support for networked file systems
Date: Tue, 23 Apr 2024 16:44:47 -0400 [thread overview]
Message-ID: <cover.1713904784.git.richard@freakingpenguin.com> (raw)
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
next reply other threads:[~2024-04-23 20:47 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-23 20:44 Richard Sent [this message]
2024-04-23 20:47 ` [bug#70542] [PATCH 1/4] file-systems: Add requirements field to file-systems Richard Sent
2024-04-24 17:31 ` Liliana Marie Prikler
2024-04-23 20:47 ` [bug#70542] [PATCH 2/4] services: base: Use requirements to delay some file-systems Richard Sent
2024-04-24 17:30 ` Liliana Marie Prikler
2024-04-23 20:47 ` [bug#70542] [PATCH 3/4] file-systems: Add support for mounting CIFS file systems Richard Sent
2024-04-24 17:29 ` Liliana Marie Prikler
2024-04-24 18:22 ` Richard Sent
2024-04-24 18:47 ` Liliana Marie Prikler
2024-04-24 19:19 ` Richard Sent
2024-04-23 20:47 ` [bug#70542] [PATCH 4/4] system: Do not check for CIFS file system availability Richard Sent
2024-04-24 17:26 ` Liliana Marie Prikler
2024-04-23 20:51 ` [bug#70542] Missing reference in cover letter Richard Sent
2024-04-25 4:56 ` [bug#70542] [PATCH v2 1/3] services: base: Add optional delayed mount of file-systems Richard Sent
2024-04-25 4:56 ` [bug#70542] [PATCH v2 2/3] file-systems: Add host-to-ip nested function Richard Sent
2024-04-25 4:56 ` [bug#70542] [PATCH v2 3/3] file-systems: Add support for mounting CIFS file systems Richard Sent
2024-04-25 6:51 ` [bug#70542] [PATCH 0/4] Improve Shepherd service support for networked " Jonathan Brielmaier via Guix-patches via
2024-04-25 13:43 ` Richard Sent
2024-06-01 23:26 ` [bug#70542] [PATCH v3 0/3] " Richard Sent
2024-06-01 23:26 ` [bug#70542] [PATCH v3 1/3] services: base: Add optional delayed mount of file-systems Richard Sent
2024-06-01 23:26 ` [bug#70542] [PATCH v3 2/3] file-systems: Add host-to-ip nested function Richard Sent
2024-06-01 23:26 ` [bug#70542] [PATCH v3 3/3] file-systems: Add support for mounting CIFS file systems Richard Sent
2024-06-04 10:06 ` bug#70542: [PATCH v3 0/3] Improve Shepherd service support for networked " Ludovic Courtès
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=cover.1713904784.git.richard@freakingpenguin.com \
--to=richard@freakingpenguin.com \
--cc=70542@debbugs.gnu.org \
--cc=dev@jpoiret.xyz \
--cc=guix@cbaines.net \
--cc=ludo@gnu.org \
--cc=me@tobias.gr \
--cc=othacehe@gnu.org \
--cc=rekado@elephly.net \
--cc=zimon.toutoune@gmail.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.