help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Custom libre kernel configuration


From: Tobias Geerinckx-Rice
Subject: Re: Custom libre kernel configuration
Date: Sat, 13 Nov 2021 00:38:38 +0100

Petr,

phodina 写道:
Here's the modification:

(define (config->string options)
  (string-join (map (match-lambda
                      ((option . 'm)
                       (string-append option "=m"))
                      ((option . #t)
                       (string-append option "=y"))
                      ((option . #f)
                       (string-append option "=n"))
                      ((option . number)
                       (string-append option "=" number))
                    options)
               "\n"))

At this point, (option . number) will match anything.

You're not matching numbers here: ‘number’ is your chosen variable name, not magic. It could be ‘foo’. It could be anything, without changing the effect of this code.

                      ((option . string)
(string-append option "=\"" string "\"")))

This will never be reached.

I'm almost certain that this is, at least in part, why your BINDER configuration isn't taking effect.

Here's mine:

(define option->string
 (match-lambda ((option . #f)
                (format #f "# ~a is not set" option))
               ((option . #t)
                (format #f "~a=y" option))
               ((option . 'm)
                (format #f "~a=m" option))
               ((option . (? number? value))
                (format #f "~a=~a" option value))
               ((option . (? string? value))
                (format #f "~a=\"~a\"" option value))))

Kind regards,

T G-R

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]