GNU bug report logs - #44196
Problems with /gnu/store in a different btrfs subvolume

Previous Next

Package: guix;

Reported by: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>

Date: Sat, 24 Oct 2020 17:58:01 UTC

Severity: normal

Tags: patch

Done: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 44196 in the body.
You can then email your comments to 44196 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sat, 24 Oct 2020 17:58:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sat, 24 Oct 2020 17:58:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: Problems with /gnu/store in a different btrfs subvolume
Date: Sat, 24 Oct 2020 19:56:15 +0200
I've been testing the installation and the use case for separate btrfs
subvolumes, so I created two different btrfs subvolumes for the root
file system (/rootfs) and the store (/storefs), and installed with guix
system init and a basic operating-system configuration.

The problems detected were:

  - [ ] Grub localization doesn't properly work as the root file system
        is not located in the literal route (that I hard-coded based on
        grub defaults).
        This was the main test, I still don't have a patch, but I'm
        thinking that we should generate the locale and provide there
        the store path.  WDYT?
  - [*] The keymap doesn't work on stage2, as the path contains the
        wrong prefix for the store file.  Fixed with patch 1.
  - [?] The store-prefix was not being provided in other places than
        the generation of a new system generation (sic), so
        "guix system delete-generations" generates grub.cfg with wrong
        paths.  This should be fixed with patch 2, but I'm not sure how
        to write another test with a marionette: gnu/tests/installer.scm
        contains most of the code needed, but I'm not sure how to do it.

The patches will follow this email.




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sat, 24 Oct 2020 18:03:02 GMT) Full text and rfc822 format available.

Message #8 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: [PATCH 1/3] system: Fix grub keymap with store in btrfs subvolume.
Date: Sat, 24 Oct 2020 20:01:17 +0200
[0001-system-Fix-grub-keymap-with-store-in-btrfs-subvolume.patch (text/x-patch, attachment)]
From b310cb18021e421be3256b85ab3f2d8f61fe0ab8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Miguel=20=C3=81ngel=20Arruga=20Vivas?=
 <rosen644835 <at> gmail.com>
Date: Sat, 24 Oct 2020 17:48:28 +0200
Subject: [PATCH 1/2] system: Fix grub keymap with store in btrfs subvolume.

* gnu/bootloader/grub.scm (grub-configuration-file)
[keyboard-layout-config]: Use normalize-file.
---
 gnu/bootloader/grub.scm | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm
index 611580a350..f1479024e6 100644
--- a/gnu/bootloader/grub.scm
+++ b/gnu/bootloader/grub.scm
@@ -421,11 +421,12 @@ set lang=~a~%" locale))))
                     (bootloader-configuration-bootloader config)))
            (keymap* (and layout
                          (keyboard-layout-file layout #:grub grub)))
+           (entry (first all-entries))
+           (device (menu-entry-device entry))
+           (mount-point (menu-entry-device-mount-point entry))
            (keymap (and keymap*
-                        (if store-directory-prefix
-                            #~(string-append #$store-directory-prefix
-                                             #$keymap*)
-                            keymap*))))
+                        (normalize-file keymap* mount-point
+                                        store-directory-prefix))))
       #~(when #$keymap
           (format port "\
 insmod keylayouts
-- 
2.28.0





Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sat, 24 Oct 2020 18:04:01 GMT) Full text and rfc822 format available.

Message #11 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: [PATCH 2/3] system: Add store-directory-prefix to boot-parameters.
Date: Sat, 24 Oct 2020 20:02:16 +0200
[0002-system-Add-store-directory-prefix-to-boot-parameters.patch (text/x-patch, attachment)]
From 527a9271122f7b83f31dc0b910c6704af81bde66 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Miguel=20=C3=81ngel=20Arruga=20Vivas?=
 <rosen644835 <at> gmail.com>
Date: Sat, 24 Oct 2020 18:15:53 +0200
Subject: [PATCH 2/2] system: Add store-directory-prefix to boot-parameters.

* gnu/machine/ssh.scm (roll-back-managed-host): Use
boot-parameters-store-directory-prefix.
* gnu/system.scm (define-module): Export
boot-parameters-store-directory-prefix.
(<boot-parameters>)[store-directory-prefix]: New field.
[boot-parameters-store-directory-prefix]: New accessor.
(read-boot-parameters): Read directory-prefix from store field.
(operating-system-boot-parameters-file): Add directory-prefix to
store field.
* guix/scripts/system.scm (reinstall-bootloader): Use
boot-parameters-store-directory-prefix.
* test/boot-parameters.scm (%default-btrfs-subvolume,
%default-store-directory-prefix): New variables.
(%grub-boot-parameters): Use %default-store-directory-prefix.
(%default-operating-system): Use %default-btrfs-subvolume.
(test-boot-parameters): Add directory-prefix.
(test optional fields): Add test for directory-prefix.
(test os store-directory-prefix): New test.
---
 gnu/machine/ssh.scm       |  3 +++
 gnu/system.scm            | 19 ++++++++++++++++++-
 guix/scripts/system.scm   |  3 +++
 tests/boot-parameters.scm | 23 ++++++++++++++++++++---
 4 files changed, 44 insertions(+), 4 deletions(-)

diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm
index 5020bd362f..a3a12fb54b 100644
--- a/gnu/machine/ssh.scm
+++ b/gnu/machine/ssh.scm
@@ -482,6 +482,8 @@ an environment type of 'managed-host."
                                         (list (second boot-parameters))))
                        (locale -> (boot-parameters-locale
                                    (second boot-parameters)))
+                       (store-dir -> (boot-parameters-store-directory-prefix
+                                      (second boot-parameters)))
                        (old-entries -> (map boot-parameters->menu-entry
                                             (drop boot-parameters 2)))
                        (bootloader -> (operating-system-bootloader
@@ -492,6 +494,7 @@ an environment type of 'managed-host."
                                     bootloader))
                                   bootloader entries
                                   #:locale locale
+                                  #:store-directory-prefix store-dir
                                   #:old-entries old-entries)))
                        (remote-result (machine-remote-eval machine remote-exp)))
     (when (eqv? 'error remote-result)
diff --git a/gnu/system.scm b/gnu/system.scm
index a3122eaa65..30a5c418d0 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -148,6 +148,7 @@
             boot-parameters-bootloader-name
             boot-parameters-bootloader-menu-entries
             boot-parameters-store-device
+            boot-parameters-store-directory-prefix
             boot-parameters-store-mount-point
             boot-parameters-locale
             boot-parameters-kernel
@@ -299,6 +300,7 @@ directly by the user."
    boot-parameters-bootloader-menu-entries)
   (store-device     boot-parameters-store-device)
   (store-mount-point boot-parameters-store-mount-point)
+  (store-directory-prefix boot-parameters-store-directory-prefix)
   (locale           boot-parameters-locale)
   (kernel           boot-parameters-kernel)
   (kernel-arguments boot-parameters-kernel-arguments)
@@ -394,6 +396,17 @@ file system labels."
           (_                                      ;the old format
            root-device))))
 
+      (store-directory-prefix
+       (match (assq 'store rest)
+         (('store . store-data)
+          (match (assq 'directory-prefix store-data)
+            (('directory-prefix prefix) prefix)
+            ;; No directory-prefix found.
+            (_ #f)))
+         (_
+          ;; No store found, old format.
+          #f)))
+
       (store-mount-point
        (match (assq 'store rest)
          (('store ('device _) ('mount-point mount-point) _ ...)
@@ -1294,6 +1307,7 @@ such as '--root' and '--load' to <boot-parameters>."
   (let* ((initrd          (and (not (operating-system-hurd os))
                                (operating-system-initrd-file os)))
          (store           (operating-system-store-file-system os))
+         (file-systems    (operating-system-file-systems os))
          (locale          (operating-system-locale os))
          (bootloader      (bootloader-configuration-bootloader
                            (operating-system-bootloader os)))
@@ -1315,6 +1329,7 @@ such as '--root' and '--load' to <boot-parameters>."
       (bootloader-configuration-menu-entries (operating-system-bootloader os)))
      (locale locale)
      (store-device (ensure-not-/dev (file-system-device store)))
+     (store-directory-prefix (btrfs-store-subvolume-file-name file-systems))
      (store-mount-point (file-system-mount-point store)))))
 
 (define (device->sexp device)
@@ -1371,7 +1386,9 @@ being stored into the \"parameters\" file)."
                       (device
                        #$(device->sexp (boot-parameters-store-device params)))
                       (mount-point #$(boot-parameters-store-mount-point
-                                      params))))
+                                      params))
+                      (directory-prefix
+                       #$(boot-parameters-store-directory-prefix params))))
                   #:set-load-path? #f)))
 
 (define-gexp-compiler (operating-system-compiler (os <operating-system>)
diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
index 9ed5c26483..ad998156c2 100644
--- a/guix/scripts/system.scm
+++ b/guix/scripts/system.scm
@@ -385,6 +385,8 @@ STORE is an open connection to the store."
          (params (first (profile-boot-parameters %system-profile
                                                  (list number))))
          (locale (boot-parameters-locale params))
+         (store-directory-prefix
+          (boot-parameters-store-directory-prefix params))
          (old-generations
           (delv number (reverse (generation-numbers %system-profile))))
          (old-params (profile-boot-parameters
@@ -398,6 +400,7 @@ STORE is an open connection to the store."
                      ((bootloader-configuration-file-generator bootloader)
                       bootloader-config entries
                       #:locale locale
+                      #:store-directory-prefix store-directory-prefix
                       #:old-entries old-entries)))
            (drvs -> (list bootcfg)))
         (mbegin %store-monad
diff --git a/tests/boot-parameters.scm b/tests/boot-parameters.scm
index d7e579bc89..a00b227551 100644
--- a/tests/boot-parameters.scm
+++ b/tests/boot-parameters.scm
@@ -46,6 +46,9 @@
 (define %default-initrd (string-append %default-initrd-path "/initrd.cpio.gz"))
 (define %default-root-device (uuid "abcdef12-3456-7890-abcd-ef1234567890"))
 (define %default-store-device (uuid "01234567-89ab-cdef-0123-456789abcdef"))
+(define %default-btrfs-subvolume "testfs")
+(define %default-store-directory-prefix
+  (string-append "/" %default-btrfs-subvolume))
 (define %default-store-mount-point (%store-prefix))
 (define %default-multiboot-modules '())
 (define %default-locale "es_ES.utf8")
@@ -63,6 +66,7 @@
    (multiboot-modules %default-multiboot-modules)
    (locale %default-locale)
    (store-device %default-store-device)
+   (store-directory-prefix %default-store-directory-prefix)
    (store-mount-point %default-store-mount-point)))
 
 (define %default-operating-system
@@ -81,7 +85,10 @@
 		         (file-system
                            (device %default-store-device)
                            (mount-point %default-store-mount-point)
-                           (type "btrfs"))
+                           (type "btrfs")
+                           (options
+                            (string-append "subvol="
+                                           %default-btrfs-subvolume)))
                          %base-file-systems))))
 
 (define (quote-uuid uuid)
@@ -103,6 +110,7 @@
           (with-store #t)
           (store-device
            (quote-uuid %default-store-device))
+          (store-directory-prefix %default-store-directory-prefix)
           (store-mount-point %default-store-mount-point))
   (define (generate-boot-parameters)
     (define (sexp-or-nothing fmt val)
@@ -117,10 +125,12 @@
             (sexp-or-nothing " (kernel-arguments ~S)" kernel-arguments)
             (sexp-or-nothing " (initrd ~S)" initrd)
             (if with-store
-                (format #false " (store~a~a)"
+                (format #false " (store~a~a~a)"
                         (sexp-or-nothing " (device ~S)" store-device)
                         (sexp-or-nothing " (mount-point ~S)"
-                                         store-mount-point))
+                                         store-mount-point)
+                        (sexp-or-nothing " (directory-prefix ~S)"
+                                         store-directory-prefix))
                 "")
             (sexp-or-nothing " (locale ~S)" locale)
             (sexp-or-nothing " (bootloader-name ~a)" bootloader-name)
@@ -149,6 +159,7 @@
        (test-read-boot-parameters #:store-device #false)
        (test-read-boot-parameters #:store-device 'false)
        (test-read-boot-parameters #:store-mount-point #false)
+       (test-read-boot-parameters #:store-directory-prefix #false)
        (test-read-boot-parameters #:multiboot-modules #false)
        (test-read-boot-parameters #:locale #false)
        (test-read-boot-parameters #:bootloader-name #false
@@ -253,4 +264,10 @@
    (operating-system-boot-parameters %default-operating-system
                                      %default-root-device)))
 
+(test-equal "from os, store-directory-prefix"
+  %default-store-directory-prefix
+  (boot-parameters-store-directory-prefix
+   (operating-system-boot-parameters %default-operating-system
+                                     %default-root-device)))
+
 (test-end "boot-parameters")
-- 
2.28.0





Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sat, 24 Oct 2020 21:15:01 GMT) Full text and rfc822 format available.

Message #14 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: [PATCH 3/3] gnu: grub: Add output locale
Date: Sat, 24 Oct 2020 23:13:05 +0200
[Message part 1 (text/plain, inline)]
Hi!

This solves Grub localization too, even though I'm not very happy with
the gexp juggling...  Any idea?

Happy hacking!
Miguel

[0003-gnu-grub-Add-output-locale.patch (text/x-patch, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sun, 25 Oct 2020 10:05:01 GMT) Full text and rfc822 format available.

Message #17 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: bug#44196: [PATCH 3/3 v2] gnu: grub: Add locale output.
Date: Sun, 25 Oct 2020 11:04:22 +0100
[Message part 1 (text/plain, inline)]
This v2 doesn't change the other patches, only this one, because it was
the one I wasn't happy with.  It changes from v1 as the separate output
"locale" is not generated, but instead the mo files are placed into
share/locale with the expected names.

[0003-gnu-grub-Add-locale-output.patch (text/x-patch, attachment)]

Added tag(s) patch. Request was from Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> to control <at> debbugs.gnu.org. (Sun, 25 Oct 2020 10:23:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Mon, 26 Oct 2020 22:05:01 GMT) Full text and rfc822 format available.

Message #22 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 3/3 v3] system: Do not depend on locale
 folder generated by grub-install.
Date: Mon, 26 Oct 2020 23:04:20 +0100
[Message part 1 (text/plain, inline)]
This version doesn't modify grub package at all, and it only generates
the folder when needed, and fixes a bug in Grub 2.04 that I didn't
noticed until I started playing with the installer:
https://savannah.gnu.org/bugs/?57889

Happy hacking!
Miguel
[v3-0003-system-Do-not-depend-on-locale-folder-generated-b.patch (text/x-patch, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Mon, 26 Oct 2020 22:30:02 GMT) Full text and rfc822 format available.

Message #25 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 4/3] system: Fix dependency for grub.cfg
 generation.
Date: Mon, 26 Oct 2020 23:29:29 +0100
[Message part 1 (text/plain, inline)]
One extra bit :-)

* The keymap was depending on the exported package grub, not on the one
provided by the bootloader configuration, so e.g. systems that use
grub-efi also ended up with grub in their dependency graph.  This patch
solves that issue.

[v3-0004-system-Fix-dependency-for-grub.cfg-generation.patch (text/x-patch, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Wed, 28 Oct 2020 21:35:02 GMT) Full text and rfc822 format available.

Message #28 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH v4 3/4] system: Do not depend on locale
 folder generated by
Date: Wed, 28 Oct 2020 22:34:05 +0100
[Message part 1 (text/plain, inline)]
Sorry, the last one didn't generate correctly the locale folder for two
reasons: wrong name for the .mo name, and incomplete path.

[v4-0003-system-Do-not-depend-on-locale-folder-generated-b.patch (text/x-patch, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Fri, 30 Oct 2020 18:14:02 GMT) Full text and rfc822 format available.

Message #31 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH v5 3/4] system: Do not depend on locale
 folder generated by
Date: Fri, 30 Oct 2020 19:13:14 +0100
[Message part 1 (text/plain, inline)]
Changes w.r.t. previous version:
  - Call normalize-file (the parameters were there but I lost the call).
  - Only call search when there is no image configured.
[0001-system-Do-not-depend-on-locale-folder-generated-by-g.patch (text/x-patch, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Fri, 30 Oct 2020 19:36:02 GMT) Full text and rfc822 format available.

Message #34 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Danny Milosavljevic <dannym <at> scratchpost.org>
To: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 4/3] system: Fix dependency for grub.cfg
 generation.
Date: Fri, 30 Oct 2020 20:35:27 +0100
[Message part 1 (text/plain, inline)]
This patch LGTM!
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Fri, 30 Oct 2020 19:37:01 GMT) Full text and rfc822 format available.

Message #37 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Danny Milosavljevic <dannym <at> scratchpost.org>
To: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 1/3] system: Fix grub keymap with store in
 btrfs subvolume.
Date: Fri, 30 Oct 2020 20:36:38 +0100
[Message part 1 (text/plain, inline)]
Is it possible for there to be no entries in all-entries at all?

If not, LGTM!
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Fri, 30 Oct 2020 21:39:01 GMT) Full text and rfc822 format available.

Message #40 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: Danny Milosavljevic <dannym <at> scratchpost.org>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 4/3] system: Fix dependency for grub.cfg
 generation.
Date: Fri, 30 Oct 2020 22:38:18 +0100
[Message part 1 (text/plain, inline)]
Danny Milosavljevic <dannym <at> scratchpost.org> writes:
> This patch LGTM!

Thanks for your review, pushed as 222a630e9e.

Happy hacking!
Miguel
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Fri, 30 Oct 2020 21:39:02 GMT) Full text and rfc822 format available.

Message #43 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: Danny Milosavljevic <dannym <at> scratchpost.org>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 1/3] system: Fix grub keymap with store in
 btrfs subvolume.
Date: Fri, 30 Oct 2020 22:38:39 +0100
[Message part 1 (text/plain, inline)]
Hi Danny,

Thank you a lot for taking a look into this. :-)

Danny Milosavljevic <dannym <at> scratchpost.org> writes:
> Is it possible for there to be no entries in all-entries at all?

This is the idiom used in the rest of the file, and that would be a bug
in the calling code.  The entries are the operating system generations +
the entries configured through the bootloader-configuration, and that
would lead to a grub.cfg without any system to boot.

> If not, LGTM!

Pushed as c69a1c27ee.

Happy hacking!
Miguel
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Fri, 30 Oct 2020 21:46:01 GMT) Full text and rfc822 format available.

Message #46 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH v6 3/4] system: Do not depend on locale
 folder generated by
Date: Fri, 30 Oct 2020 22:45:29 +0100
[Message part 1 (text/plain, inline)]
I hope this is the last one, at least for bug fixes.  This version uses
the right name for the autogenerated file en <at> quot.mo when no image is
provided.

Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> writes:
> Changes w.r.t. previous version:
>   - Call normalize-file (the parameters were there but I lost the call).
>   - Only call search when there is no image configured.

[0001-system-Do-not-depend-on-locale-folder-generated-by-g.patch (text/x-patch, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sat, 31 Oct 2020 21:40:01 GMT) Full text and rfc822 format available.

Message #49 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 2/3] system: Add store-directory-prefix to
 boot-parameters.
Date: Sat, 31 Oct 2020 22:39:40 +0100
Hi!

Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> skribis:

> From 527a9271122f7b83f31dc0b910c6704af81bde66 Mon Sep 17 00:00:00 2001
> From: =?UTF-8?q?Miguel=20=C3=81ngel=20Arruga=20Vivas?=
>  <rosen644835 <at> gmail.com>
> Date: Sat, 24 Oct 2020 18:15:53 +0200
> Subject: [PATCH 2/2] system: Add store-directory-prefix to boot-parameters.
>
> * gnu/machine/ssh.scm (roll-back-managed-host): Use
> boot-parameters-store-directory-prefix.
> * gnu/system.scm (define-module): Export
> boot-parameters-store-directory-prefix.
> (<boot-parameters>)[store-directory-prefix]: New field.
> [boot-parameters-store-directory-prefix]: New accessor.
> (read-boot-parameters): Read directory-prefix from store field.
> (operating-system-boot-parameters-file): Add directory-prefix to
> store field.
> * guix/scripts/system.scm (reinstall-bootloader): Use
> boot-parameters-store-directory-prefix.
> * test/boot-parameters.scm (%default-btrfs-subvolume,
> %default-store-directory-prefix): New variables.
> (%grub-boot-parameters): Use %default-store-directory-prefix.
> (%default-operating-system): Use %default-btrfs-subvolume.
> (test-boot-parameters): Add directory-prefix.
> (test optional fields): Add test for directory-prefix.
> (test os store-directory-prefix): New test.

[...]

> +++ b/gnu/system.scm
> @@ -148,6 +148,7 @@
>              boot-parameters-bootloader-name
>              boot-parameters-bootloader-menu-entries
>              boot-parameters-store-device
> +            boot-parameters-store-directory-prefix
>              boot-parameters-store-mount-point
>              boot-parameters-locale
>              boot-parameters-kernel
> @@ -299,6 +300,7 @@ directly by the user."
>     boot-parameters-bootloader-menu-entries)
>    (store-device     boot-parameters-store-device)
>    (store-mount-point boot-parameters-store-mount-point)
> +  (store-directory-prefix boot-parameters-store-directory-prefix)

Could you explain why we need ‘store-directory-prefix’ in addition to
‘store-mount-point’?  At first sight, looking at the fields in there,
these two can seem to be synonymous.

Also patch #3 doesn’t depend on it, does it?

Thanks,
Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sat, 31 Oct 2020 21:46:02 GMT) Full text and rfc822 format available.

Message #52 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH v6 3/4] system: Do not depend on locale
 folder generated by
Date: Sat, 31 Oct 2020 22:44:53 +0100
¡Hola!

Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> skribis:

> From 5886bdf74bda59649b3d17b691132d9d030e0fb4 Mon Sep 17 00:00:00 2001
> From: =?UTF-8?q?Miguel=20=C3=81ngel=20Arruga=20Vivas?=
>  <rosen644835 <at> gmail.com>
> Date: Sat, 24 Oct 2020 20:36:21 +0200
> Subject: [PATCH] system: Do not depend on locale folder generated by
>  grub-install.
>
> * gnu/bootloader/grub.scm (define-module): Use (guix packages).
> (grub-locale-folder): New computed folder.
> (grub-configuration-file)[locale-config]: Use grub-locale-folder only when a
> locale is needed.

[...]

> +(define (grub-locale-folder grub)
> +  "Generate a folder with the locales from GRUB."

s/folder/directory/  :-)

> +  (define builder
> +    #~(begin
> +        (use-modules (ice-9 ftw))
> +        (let ((locale (string-append #$grub "/share/locale"))
> +              (out    #$output))
> +          (mkdir out)
> +          (chdir out)
> +          (for-each (lambda (lang)
> +                      (let ((file (string-append locale "/" lang
> +                                                 "/LC_MESSAGES/grub.mo"))
> +                            (dest (string-append lang ".mo")))
> +                        (when (file-exists? file)
> +                          (copy-file file dest))))
> +                    (scandir locale)))))
> +  (computed-file "grub-boot-locale" builder))

Maybe just “grub-locales”?

> +    (let* ((entry (first all-entries))
> +           (device (menu-entry-device entry))
> +           (mount-point (menu-entry-device-mount-point entry))
> +           (bootloader (bootloader-configuration-bootloader config))
> +           (grub (bootloader-package bootloader))
> +           (locale-dir (normalize-file (grub-locale-folder grub)
> +                                       mount-point
> +                                       store-directory-prefix)))

Nitpick: maybe s/locale-dir/locales/

> +      #~(let ((locale #$(and locale
> +                             (locale-definition-source
> +                              (locale-name->definition locale))))
> +              (locale-dir #$(and locale locale-dir)))
> +          (when locale
> +            (format port "\
>  # Localization configuration.
> -if search --file --set boot_partition /grub/grub.cfg; then
> -    set locale_dir=(${boot_partition})/grub/locale
> -else
> -    set locale_dir=/boot/grub/locale
> -fi
> -set lang=~a~%" locale))))
> +~asearch --file --set ~a/en <at> quot.mo
> +set locale_dir=~a
> +set lang=~a~%"

Otherwise LGTM, thanks!

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sat, 31 Oct 2020 23:03:02 GMT) Full text and rfc822 format available.

Message #55 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 2/3] system: Add store-directory-prefix to
 boot-parameters.
Date: Sun, 01 Nov 2020 00:02:14 +0100
Hi Ludo!

First of all, thanks for the review.

Ludovic Courtès <ludo <at> gnu.org> writes:
> Could you explain why we need ‘store-directory-prefix’ in addition to
> ‘store-mount-point’?  At first sight, looking at the fields in there,
> these two can seem to be synonymous.

The difference is subtle unless you use btrfs subvolumes... or bind
mounts, which currently probably would fail as the check is only
performed for btrfs partitions---note to self, think about this and
probably prepare a patch.  This check was already implemented, but the
parameter was only provided to grub-configuration-file during
init/reconfigure.

Should I add an explanation of/link the bug on the commit message?  Or
maybe is something like this better?
----
;; Mount point of the store device (as in /etc/fstab's second field)
(store-mount-point boot-parameters-store-mount-point)
;; Actual path of the store inside of the device at boot time.
(store-directory-prefix boot-parameters-store-directory-prefix)
----

In any case, if that doesn't clarify enough, it can be better understood
with an example:
-----
Disk configuration:
/dev/xda1: btrfs file system
  - /rootfs: subvolume mounted on /
  - /gnufs: subvolume mounted on /gnu.

Therefore the serialized boot-parameters should be:
(boot-parameters
  ...
  (store
    (device "/dev/xda1")
    (mount-point "/gnu")
    (directory-prefix "/gnufs"))
  ...)
-----
This way grub.cfg generation is able to `normalize-file' store paths and
transform the user visible file /gnu/store/xxxxx-kernel to the grub
visible path /gnufs/store/xxxx-kernel in the final file.  This is
already provided by the operating-system definition, but the other calls
to the boot configuration generator only rely on the information
provided by boot-parameters.

A simple test case that I haven't implemented yet as a marionette---but
I should anyway---only needs this steps:

1. Create initial os with that kind of disk configuration.
2. Boot on it.
3. Create a second generation.
4. Call guix system delete-generations.
5. Reboot---it doesn't as grub.cfg is wrong.
6. Usual tests.

Tomorrow I won't be able to do much, but this Monday I could try to
implement something like this too if you think it's worth.

> Also patch #3 doesn’t depend on it, does it?

All the patches are independent, as they fix separate issues, but all
are related with bugs detected with my tests with btrfs subvolumes.  I
should have specified that they were a patch set, even though that one
was getting close to become a series... hopefully convergent. :)

Thanks again,
Miguel




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sun, 01 Nov 2020 00:02:02 GMT) Full text and rfc822 format available.

Message #58 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 2/3] system: Add store-directory-prefix to
 boot-parameters.
Date: Sun, 01 Nov 2020 01:01:25 +0100
Writing the last email I though about adding this:
------------------------------------------------------------------------------
   ;; OS's root file system, so it might be a device path like "/dev/sda3".
+  ;; The 'store-directory-prefix' field contains #f or the actual path of
+  ;; the store inside the 'store-device' as seen by GRUB, e.g. it would
+  ;; contain "/storefs" if the store is located in that subvolume of a btrfs
+  ;; partition.
   (root-device      boot-parameters-root-device)
   (bootloader-name  boot-parameters-bootloader-name)
   (bootloader-menu-entries                        ;list of <menu-entry>
    boot-parameters-bootloader-menu-entries)
   (store-device     boot-parameters-store-device)
   (store-mount-point boot-parameters-store-mount-point)
+  (store-directory-prefix boot-parameters-store-directory-prefix)
------------------------------------------------------------------------------

WDYT?

Happy hacking!
Miguel

Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> writes:

> Hi Ludo!
>
> First of all, thanks for the review.
>
> Ludovic Courtès <ludo <at> gnu.org> writes:
>> Could you explain why we need ‘store-directory-prefix’ in addition to
>> ‘store-mount-point’?  At first sight, looking at the fields in there,
>> these two can seem to be synonymous.
>
> The difference is subtle unless you use btrfs subvolumes... or bind
> mounts, which currently probably would fail as the check is only
> performed for btrfs partitions---note to self, think about this and
> probably prepare a patch.  This check was already implemented, but the
> parameter was only provided to grub-configuration-file during
> init/reconfigure.
>
> Should I add an explanation of/link the bug on the commit message?  Or
> maybe is something like this better?
> ----
> ;; Mount point of the store device (as in /etc/fstab's second field)
> (store-mount-point boot-parameters-store-mount-point)
> ;; Actual path of the store inside of the device at boot time.
> (store-directory-prefix boot-parameters-store-directory-prefix)
> ----
>
> In any case, if that doesn't clarify enough, it can be better understood
> with an example:
> -----
> Disk configuration:
> /dev/xda1: btrfs file system
>   - /rootfs: subvolume mounted on /
>   - /gnufs: subvolume mounted on /gnu.
>
> Therefore the serialized boot-parameters should be:
> (boot-parameters
>   ...
>   (store
>     (device "/dev/xda1")
>     (mount-point "/gnu")
>     (directory-prefix "/gnufs"))
>   ...)
> -----
> This way grub.cfg generation is able to `normalize-file' store paths and
> transform the user visible file /gnu/store/xxxxx-kernel to the grub
> visible path /gnufs/store/xxxx-kernel in the final file.  This is
> already provided by the operating-system definition, but the other calls
> to the boot configuration generator only rely on the information
> provided by boot-parameters.
>
> A simple test case that I haven't implemented yet as a marionette---but
> I should anyway---only needs this steps:
>
> 1. Create initial os with that kind of disk configuration.
> 2. Boot on it.
> 3. Create a second generation.
> 4. Call guix system delete-generations.
> 5. Reboot---it doesn't as grub.cfg is wrong.
> 6. Usual tests.
>
> Tomorrow I won't be able to do much, but this Monday I could try to
> implement something like this too if you think it's worth.
>
>> Also patch #3 doesn’t depend on it, does it?
>
> All the patches are independent, as they fix separate issues, but all
> are related with bugs detected with my tests with btrfs subvolumes.  I
> should have specified that they were a patch set, even though that one
> was getting close to become a series... hopefully convergent. :)
>
> Thanks again,
> Miguel




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Sun, 01 Nov 2020 00:37:01 GMT) Full text and rfc822 format available.

Message #61 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH v6 3/4] system: Do not depend on locale
 folder generated by
Date: Sun, 01 Nov 2020 01:36:38 +0100
¡Hola, Ludo!

Thanks for your comments.  Reviewing them I found some more issues that
I address inline:

Ludovic Courtès <ludo <at> gnu.org> writes:
> Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> skribis:
>
>> From 5886bdf74bda59649b3d17b691132d9d030e0fb4 Mon Sep 17 00:00:00 2001
>> From: =?UTF-8?q?Miguel=20=C3=81ngel=20Arruga=20Vivas?=
>>  <rosen644835 <at> gmail.com>
>> Date: Sat, 24 Oct 2020 20:36:21 +0200
>> Subject: [PATCH] system: Do not depend on locale folder generated by
>>  grub-install.

I've changed the title to "system: Generate grub locale directory for
grub.cfg.", which is positive, shorter and more descriptive.  I have to
work on my communicative skills a lot...

>>
>> * gnu/bootloader/grub.scm (define-module): Use (guix packages).

This was a leftover from the modification of Grub itself instead of
using computed-file and not needed anymore, removed.

>> (grub-locale-folder): New computed folder.
>> (grub-configuration-file)[locale-config]: Use grub-locale-folder only when a
>> locale is needed.

Changed with the new names and added an explanation about the search.
>
> [...]
>
>> +(define (grub-locale-folder grub)
>> +  "Generate a folder with the locales from GRUB."
>
> s/folder/directory/  :-)

Applied, both in the function name and the documentation string.

>> +  (define builder
>> +    #~(begin
>> +        (use-modules (ice-9 ftw))
>> +        (let ((locale (string-append #$grub "/share/locale"))
>> +              (out    #$output))
>> +          (mkdir out)
>> +          (chdir out)
>> +          (for-each (lambda (lang)
>> +                      (let ((file (string-append locale "/" lang
>> +                                                 "/LC_MESSAGES/grub.mo"))
>> +                            (dest (string-append lang ".mo")))
>> +                        (when (file-exists? file)
>> +                          (copy-file file dest))))
>> +                    (scandir locale)))))
>> +  (computed-file "grub-boot-locale" builder))
>
> Maybe just “grub-locales”?

This name sounds right, applied too. :-)

>> +    (let* ((entry (first all-entries))
>> +           (device (menu-entry-device entry))
>> +           (mount-point (menu-entry-device-mount-point entry))
>> +           (bootloader (bootloader-configuration-bootloader config))
>> +           (grub (bootloader-package bootloader))
>> +           (locale-dir (normalize-file (grub-locale-folder grub)
>> +                                       mount-point
>> +                                       store-directory-prefix)))
>
> Nitpick: maybe s/locale-dir/locales/

Applied too, but I moved this call from the let* to ...

>> +      #~(let ((locale #$(and locale
>> +                             (locale-definition-source
>> +                              (locale-name->definition locale))))
>> +              (locale-dir #$(and locale locale-dir)))

... here, to avoid the generation when there is no locale, which
shouldn't be a common use case, but it shouldn't depend on the
generation of that directory because it won't be used.

>> +          (when locale
>> +            (format port "\
>>  # Localization configuration.
>> -if search --file --set boot_partition /grub/grub.cfg; then
>> -    set locale_dir=(${boot_partition})/grub/locale
>> -else
>> -    set locale_dir=/boot/grub/locale
>> -fi
>> -set lang=~a~%" locale))))
>> +~asearch --file --set ~a/en <at> quot.mo
>> +set locale_dir=~a
>> +set lang=~a~%"
>
> Otherwise LGTM, thanks!

Thank you again for the review.  Pushed as
f445bc65764ffad2ae9f3b382ddb8feb4eeea2fb with these fixes, after running
again make check and a subset of make check-system.

Happy hacking!
Miguel




Reply sent to Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>:
You have taken responsibility. (Sun, 01 Nov 2020 01:45:02 GMT) Full text and rfc822 format available.

Notification sent to Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>:
bug acknowledged by developer. (Sun, 01 Nov 2020 01:45:02 GMT) Full text and rfc822 format available.

Message #66 received at 44196-done <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 44196-done <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 2/3] system: Add store-directory-prefix to
 boot-parameters.
Date: Sun, 01 Nov 2020 02:44:12 +0100
I've pushed this last patch as 582cf9257cd1f9c969fbba5eb1c336ac8b975cde
with the following additions:
 - A pointer to this issue in the commit message.
 - A description of store-directory-prefix on the commit message.
 - A better version (I hope) of the comment inside <boot-parameters>.

Thank you very much!
Miguel




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Mon, 02 Nov 2020 16:07:02 GMT) Full text and rfc822 format available.

Message #69 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 2/3] system: Add store-directory-prefix to
 boot-parameters.
Date: Mon, 02 Nov 2020 17:06:45 +0100
Hi!

Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> skribis:

> Ludovic Courtès <ludo <at> gnu.org> writes:
>> Could you explain why we need ‘store-directory-prefix’ in addition to
>> ‘store-mount-point’?  At first sight, looking at the fields in there,
>> these two can seem to be synonymous.
>
> The difference is subtle unless you use btrfs subvolumes... or bind
> mounts, which currently probably would fail as the check is only
> performed for btrfs partitions---note to self, think about this and
> probably prepare a patch.  This check was already implemented, but the
> parameter was only provided to grub-configuration-file during
> init/reconfigure.
>
> Should I add an explanation of/link the bug on the commit message?  Or
> maybe is something like this better?
> ----
> ;; Mount point of the store device (as in /etc/fstab's second field)
> (store-mount-point boot-parameters-store-mount-point)
> ;; Actual path of the store inside of the device at boot time.
> (store-directory-prefix boot-parameters-store-directory-prefix)
> ----
>
> In any case, if that doesn't clarify enough, it can be better understood
> with an example:
> -----
> Disk configuration:
> /dev/xda1: btrfs file system
>   - /rootfs: subvolume mounted on /
>   - /gnufs: subvolume mounted on /gnu.
>
> Therefore the serialized boot-parameters should be:
> (boot-parameters
>   ...
>   (store
>     (device "/dev/xda1")
>     (mount-point "/gnu")
>     (directory-prefix "/gnufs"))
>   ...)
> -----

(Btrfs no0b here.)  Does that mean that /gnu is like a bind-mount of
/gnufs in this case?

Anyway, I think I got it now, but I feel I’ll have to search again for
this example next time I stumble upon it.  ;-)

> Writing the last email I though about adding this:
> ------------------------------------------------------------------------------
>    ;; OS's root file system, so it might be a device path like "/dev/sda3".
> +  ;; The 'store-directory-prefix' field contains #f or the actual path of
> +  ;; the store inside the 'store-device' as seen by GRUB, e.g. it would
> +  ;; contain "/storefs" if the store is located in that subvolume of a btrfs
> +  ;; partition.
>    (root-device      boot-parameters-root-device)
>    (bootloader-name  boot-parameters-bootloader-name)
>    (bootloader-menu-entries                        ;list of <menu-entry>
>     boot-parameters-bootloader-menu-entries)
>    (store-device     boot-parameters-store-device)
>    (store-mount-point boot-parameters-store-mount-point)
> +  (store-directory-prefix boot-parameters-store-directory-prefix)
> ------------------------------------------------------------------------------

s/path/file name/, but otherwise LGTM.

Thanks for working on these changes!

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Mon, 02 Nov 2020 18:53:02 GMT) Full text and rfc822 format available.

Message #72 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 2/3] system: Add store-directory-prefix to
 boot-parameters.
Date: Mon, 02 Nov 2020 19:52:18 +0100
Hello,

Ludovic Courtès <ludo <at> gnu.org> writes:
> (Btrfs no0b here.)  Does that mean that /gnu is like a bind-mount of
> /gnufs in this case?

Yes, it's exactly like that for the end user, but that use case isn't
implemented yet---it should be useful too for the Hurd and
translators---so I have it under my radar.

> Anyway, I think I got it now, but I feel I’ll have to search again for
> this example next time I stumble upon it.  ;-)

I also linked this report on the commit message, as it's a non-trivial
use case and everybody could need as much info as possible if an error
hits---fingers crossed.

>> Writing the last email I though about adding this:
>> ------------------------------------------------------------------------------
>>    ;; OS's root file system, so it might be a device path like "/dev/sda3".
>> +  ;; The 'store-directory-prefix' field contains #f or the actual path of
>> +  ;; the store inside the 'store-device' as seen by GRUB, e.g. it would
>> +  ;; contain "/storefs" if the store is located in that subvolume of a btrfs
>> +  ;; partition.
>>    (root-device      boot-parameters-root-device)
>>    (bootloader-name  boot-parameters-bootloader-name)
>>    (bootloader-menu-entries                        ;list of <menu-entry>
>>     boot-parameters-bootloader-menu-entries)
>>    (store-device     boot-parameters-store-device)
>>    (store-mount-point boot-parameters-store-mount-point)
>> +  (store-directory-prefix boot-parameters-store-directory-prefix)
>> ------------------------------------------------------------------------------
>
> s/path/file name/, but otherwise LGTM.

I've pushed this change as 2df44e934c9ba14a89d9245d1a4f7cf18e8cfdaa with
changes on the rest of the comment as well, as the wording was the same,
as I agree that path should refer to a route (where there could be
several concrete locations/file names in unix dialect), and file name
should be the correct term.

> Thanks for working on these changes!

Thanks to you for the review, for me this is useful in my daily life (as
now I can manage btrfs better too, hehe) and much fun! :-)

Happy hacking!
Miguel




Information forwarded to bug-guix <at> gnu.org:
bug#44196; Package guix. (Tue, 03 Nov 2020 09:27:02 GMT) Full text and rfc822 format available.

Message #75 received at 44196 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com>
Cc: 44196 <at> debbugs.gnu.org
Subject: Re: bug#44196: [PATCH 2/3] system: Add store-directory-prefix to
 boot-parameters.
Date: Tue, 03 Nov 2020 10:26:46 +0100
Hi,

Miguel Ángel Arruga Vivas <rosen644835 <at> gmail.com> skribis:

> I've pushed this change as 2df44e934c9ba14a89d9245d1a4f7cf18e8cfdaa with
> changes on the rest of the comment as well, as the wording was the same,
> as I agree that path should refer to a route (where there could be
> several concrete locations/file names in unix dialect), and file name
> should be the correct term.

Thanks!  Regarding “file name”, it’s terminology that’s part of the GNU
Coding Standards and I think it’s nice to be consistent throughout the
project.

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 01 Dec 2020 12:24:12 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 259 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.