guix system: Report wrong file system 'device' fields.

Previously, if you wrote (device "my-label") without (title 'label),
you'd get:

  guix system: error: stat: No such file or directory: "my-label"

Now you get a proper error and a hint.

Reported by Pierre-Antoine Rouby.

* guix/scripts/system.scm (check-file-system-availability)[literal]: New
variable.  Loop over LITERAL.
* gnu/system/file-systems.scm (%pseudo-file-system-types): New variable.
* guix/ui.scm (display-hint): Make public.
This commit is contained in:
Ludovic Courtès 2018-04-27 15:31:37 +02:00
parent 60912a888d
commit 6ddb59607b
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 32 additions and 2 deletions

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -47,6 +47,7 @@
spec->file-system
specification->file-system-mapping
%pseudo-file-system-types
%fuse-control-file-system
%binary-format-file-system
%shared-memory-file-system
@ -203,6 +204,12 @@ TARGET in the other system."
;;; Common file systems.
;;;
(define %pseudo-file-system-types
;; List of know pseudo file system types. This is used when validating file
;; system definitions.
'("binfmt_misc" "cgroup" "devpts" "devtmpfs" "fusectl"
"proc" "sysfs" "tmpfs"))
(define %fuse-control-file-system
;; Control file system for Linux' file systems in user-space (FUSE).
(file-system