unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Taylan Kammer <taylanbayirli@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 31889@debbugs.gnu.org
Subject: bug#31889: Filesystems must not depend on device mappings?
Date: Thu, 21 Jun 2018 20:44:42 +0200	[thread overview]
Message-ID: <87efh09dyd.fsf@gmail.com> (raw)
In-Reply-To: <87efh1qhs3.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Wed, 20 Jun 2018 23:17:48 +0200")

ludo@gnu.org (Ludovic Courtès) writes:

> Hi!
>
> Taylan Ulrich "Bayırlı/Kammer" <taylanbayirli@gmail.com> skribis:
>
>> If in my OS config I define some luks mappings, and define the
>> corresponding filesystems with dependencies on the mapped devices,
>> I get an error on 'guix system reconfigure'.
>>
>> Example:
>>
>>   (operating-system
>>     ...
>>     (mapped-devices
>>       (list (mapped-device ... (target "root"))))
>>     (file-systems
>>       (list (file-system (mount-point "/")
>>                          ...
>>                          (dependencies mapped-devices))))
>>     ...)
>>
>> This will yield an error like:
>>
>>   file-system-/ depends on device-mapping-root, which is not
>>   provided by any service
>
> Could you show the complete ‘mapped-devices’ and ‘file-systems’ fields,
> without ellipses?
>
> The message above suggests that “/” was not considered as
> needed-for-boot.
>
> Thanks,
> Ludo’.

Sorry, looks like my example was wrong.  Here is a problematic OS
declaration:

    (operating-system
     (host-name "guixsd")
     (timezone "Europe/Berlin")
     (locale "en_US.utf8")
     
     (bootloader
      (bootloader-configuration
       (bootloader grub-bootloader)
       (target "/dev/sda")))
     
     (mapped-devices
      (list (mapped-device
             (source (uuid "b3d059f8-1c4f-4569-88dd-5485825b4373"))
             (target "guixsd")
             (type luks-device-mapping))
            (mapped-device
             (source (uuid "550d9258-bbbb-488c-af27-6b1fefa190ee"))
             (target "home")
             (type luks-device-mapping))))
     
     (file-systems
      (append
       (list (file-system
              (device "/dev/mapper/guixsd")
              (mount-point "/")
              (type "ext4")
              (dependencies mapped-devices))
             (file-system
              (device "/dev/mapper/home")
              (mount-point "/home")
              (type "ext4")
              (dependencies mapped-devices)))
       %base-file-systems))
     
     (users
      (append
       (list (user-account
              (name "taylan")
              (comment "Taylan Kammer")
              (group "users")
              (supplementary-groups '("wheel" "netdev" "audio" "video"))
              (home-directory "/home/taylan")))
       %base-user-accounts))
     
     (packages %base-packages)
     (services %desktop-services)
     
     ;; Allow resolution of '.local' host names with mDNS.
     (name-service-switch %mdns-host-lookup-nss))

It results in the error message:

    guix system: error: service 'file-system-/home' requires
    'device-mapping-home', which is not provided by any service

(I also got that for '/' rather than '/home' at some point, but can't
remember under what conditions.)

It works when both '(dependencies mapped-devices)' clauses are simply
removed.

All in all I can't really figure out the logic behind the whole thing
and what exactly is expected.  I think the error reporting and relevant
section of the documentation may need some improvement.

Taylan

  reply	other threads:[~2018-06-21 16:45 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-18 21:11 bug#31889: Filesystems must not depend on device mappings? Taylan Ulrich Bayırlı/Kammer
2018-06-20 21:17 ` Ludovic Courtès
2018-06-21 18:44   ` Taylan Kammer [this message]
2018-06-21 21:55     ` Ludovic Courtès
2018-06-22 18:21       ` Taylan Kammer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87efh09dyd.fsf@gmail.com \
    --to=taylanbayirli@gmail.com \
    --cc=31889@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).