Subject: bug#70542: closed (Re: [bug#70542] [PATCH v3 0/3] Improve Shepherd service support for networked file systems)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 04 Jun 2024 10:08:02 +0000

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 [email-masked].

-- 
70542: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=70542
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#70542] [PATCH v3 0/3] Improve Shepherd service support for networked file systems
From: Ludovic Courtès <[email-masked]>
To: Richard Sent <[email-masked]>
Cc: Josselin Poiret <[email-masked]>, [email-masked], Simon Tournier <[email-masked]>, Mathieu Othacehe <[email-masked]>, Tobias Geerinckx-Rice <[email-masked]>, Ricardo Wurmus <[email-masked]>, Christopher Baines <[email-masked]>
Date: Tue, 04 Jun 2024 12:06:41 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Richard,

Richard Sent <[email-masked]> 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’.

Subject: [PATCH 0/4] Improve Shepherd service support for networked file systems
From: Richard Sent <[email-masked]>
To: [email-masked]
Cc: Richard Sent <[email-masked]>
Date: Tue, 23 Apr 2024 16:44:47 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

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