~ruther/guix-local

d7b342d81556ddee9e369f78255bc76367a004ae — Ludovic Courtès 9 years ago 6fc48c2
system: 'read-boot-parameters' reads the 'initrd' parameter.

* gnu/system.scm (<boot-parameters>)[initrd]: New field.
(read-boot-parameters): Read the 'initrd' element and fill in the
'initrd' field of the result.
1 files changed, 11 insertions(+), 2 deletions(-)

M gnu/system.scm
M gnu/system.scm => gnu/system.scm +11 -2
@@ 101,6 101,7 @@
            boot-parameters-root-device
            boot-parameters-kernel
            boot-parameters-kernel-arguments
            boot-parameters-initrd
            read-boot-parameters

            local-host-aliases


@@ 770,7 771,8 @@ this file is the reconstruction of GRUB menu entries for old configurations."
  (label            boot-parameters-label)
  (root-device      boot-parameters-root-device)
  (kernel           boot-parameters-kernel)
  (kernel-arguments boot-parameters-kernel-arguments))
  (kernel-arguments boot-parameters-kernel-arguments)
  (initrd           boot-parameters-initrd))

(define (read-boot-parameters port)
  "Read boot parameters from PORT and return the corresponding


@@ 794,7 796,14 @@ this file is the reconstruction of GRUB menu entries for old configurations."
      (kernel-arguments
       (match (assq 'kernel-arguments rest)
         ((_ args) args)
         (#f       '())))))                       ;the old format
         (#f       '())))                         ;the old format

      (initrd
       (match (assq 'initrd rest)
         (('initrd ('string-append directory file)) ;the old format
          (string-append directory file))
         (('initrd (? string? file))
          file)))))
    (x                                            ;unsupported format
     (warning (_ "unrecognized boot parameters for '~a'~%")
              system)