GNU bug report logs - #70542
[PATCH 0/4] Improve Shepherd service support for networked file systems

Previous Next

Package: guix-patches;

Reported by: Richard Sent <richard <at> freakingpenguin.com>

Date: Tue, 23 Apr 2024 20:47:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Richard Sent <richard <at> freakingpenguin.com>
Subject: bug#70542: closed (Re: [bug#70542] [PATCH v3 0/3] Improve
 Shepherd service support for networked file systems)
Date: Tue, 04 Jun 2024 10:08:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#70542: [PATCH 0/4] Improve Shepherd service support for networked file systems

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 70542 <at> debbugs.gnu.org.

-- 
70542: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=70542
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Ludovic Courtès <ludo <at> gnu.org>
To: Richard Sent <richard <at> freakingpenguin.com>
Cc: Josselin Poiret <dev <at> jpoiret.xyz>, 70542-done <at> debbugs.gnu.org,
 Simon Tournier <zimon.toutoune <at> gmail.com>, Mathieu Othacehe <othacehe <at> gnu.org>,
 Tobias Geerinckx-Rice <me <at> tobias.gr>, Ricardo Wurmus <rekado <at> elephly.net>,
 Christopher Baines <guix <at> cbaines.net>
Subject: Re: [bug#70542] [PATCH v3 0/3] Improve Shepherd service support for
 networked file systems
Date: Tue, 04 Jun 2024 12:06:41 +0200
Hi Richard,

Richard Sent <richard <at> freakingpenguin.com> skribis:

> Since there hasn't been any discussion on this patch and it fell off QA
> recently, I figured I'd resubmit with a small change.
>
> file-system-requirements was changed to file-system-shepherd-requirements to
> be more consistent with other services.
>
> I still feel like shepherd-requirements shouldn't be merged with dependencies
> due to functional differences, but if there's consensus otherwise I can change
> it.
>
> I believe all other feedback so far has been addressed. :)

Thanks for the heads-up, I had forgotten about this patch set…

>   services: base: Add optional delayed mount of file-systems
>   file-systems: Add host-to-ip nested function
>   file-systems: Add support for mounting CIFS file systems

LGTM, applied.  Thank you!

Ludo’.

[Message part 3 (message/rfc822, inline)]
From: Richard Sent <richard <at> freakingpenguin.com>
To: guix-patches <at> gnu.org
Cc: Richard Sent <richard <at> freakingpenguin.com>
Subject: [PATCH 0/4] Improve Shepherd service support for networked file
 systems
Date: Tue, 23 Apr 2024 16:44:47 -0400
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




This bug report was last modified 352 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.