summaryrefslogtreecommitdiff
path: root/gnu/services
diff options
context:
space:
mode:
authorDanny Milosavljevic <dannym@scratchpost.org>2017-03-18 15:06:32 +0100
committerDanny Milosavljevic <dannym@scratchpost.org>2017-03-19 18:49:30 +0100
commit26e34e1e1288d657e92372efb6edc95c0e299247 (patch)
tree0305c74bde8bf4798df2966190c5f47433c12075 /gnu/services
parent7c86c0310939619cb37d4706ca3446ed342a2444 (diff)
services: file-system-shepherd-service: Make it find the fsck programs.
Fixes <https://bugs.gnu.org/25917>. * gnu/services/base.scm (file-system-shepherd-service): Use file-system-packages.
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/base.scm14
1 files changed, 8 insertions, 6 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 5298a11f63..ab50301462 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -274,7 +274,8 @@ FILE-SYSTEM."
(options (file-system-options file-system))
(check? (file-system-check? file-system))
(create? (file-system-create-mount-point? file-system))
- (dependencies (file-system-dependencies file-system)))
+ (dependencies (file-system-dependencies file-system))
+ (packages (file-system-packages (list file-system))))
(and (file-system-mount? file-system)
(with-imported-modules '((gnu build file-systems)
(guix build bournish))
@@ -292,11 +293,12 @@ FILE-SYSTEM."
;; Make sure fsck.ext2 & co. can be found.
(dynamic-wind
(lambda ()
- (setenv "PATH"
- (string-append
- #$e2fsprogs "/sbin:"
- "/run/current-system/profile/sbin:"
- $PATH)))
+ ;; Don’t display the PATH settings.
+ (with-output-to-port (%make-void-port "w")
+ (lambda ()
+ (set-path-environment-variable "PATH"
+ '("bin" "sbin")
+ '#$packages))))
(lambda ()
(mount-file-system
`(#$device #$title #$target #$type #$flags