Subject: [bug#65335] [PATCH v3 5/5] gnu: home: symlink-manager: Allow busy device skip.

From: Nicolas Graves <[email-masked]>
Date: Sun, 4 Feb 2024 03:19:57 +0100

* gnu/home/services/symlink-manager.scm (update-symlinks-script):
Allow busy device skip.

Change-Id: Iff91c8a30309d25c02a8311d8d5ddbf54e90f5ad
---
 gnu/home/services/symlink-manager.scm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/gnu/home/services/symlink-manager.scm b/gnu/home/services/symlink-manager.scm
index e4c931fbee..560e03a839 100644
--- a/gnu/home/services/symlink-manager.scm
+++ b/gnu/home/services/symlink-manager.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2021 Andrew Tropin <[email-masked]>
 ;;; Copyright © 2021 Xinglu Chen <[email-masked]>
 ;;; Copyright © 2022 Ludovic Courtès <[email-masked]>
+;;; Copyright © 2024 Nicolas Graves <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -157,6 +158,12 @@ (define (strip file)
                            #t
                            (G_ "Skipping ~a (not an empty directory)... done\n")
                            directory))
+                         ;; This happens when the directory is a mounted device.
+                         ((= EBUSY errno)
+                          (format
+                           #t
+                           (G_ "Skipping ~a (underlying device is busy)... done\n")
+                           directory))
                          ((= ENOENT errno) #t)
                          ((= ENOTDIR errno) #t)
                          (else
-- 
2.41.0