GNU bug report logs - #35583
Setting a GRUB keyboard-layout breaks GRUB… and Linux‽

Previous Next

Package: guix;

Reported by: Tobias Geerinckx-Rice <me <at> tobias.gr>

Date: Sun, 5 May 2019 16:28:02 UTC

Severity: normal

To reply to this bug, email your comments to 35583 AT debbugs.gnu.org.

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#35583; Package guix. (Sun, 05 May 2019 16:28:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Tobias Geerinckx-Rice <me <at> tobias.gr>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sun, 05 May 2019 16:28:02 GMT) Full text and rfc822 format available.

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

From: Tobias Geerinckx-Rice <me <at> tobias.gr>
To: Bug guix <bug-guix <at> gnu.org>
Subject: Setting a GRUB keyboard-layout breaks GRUB…
 and Linux‽
Date: Sun, 05 May 2019 18:27:31 +0200
[Message part 1 (text/plain, inline)]
Guix,

Some (=none) of you might remember my X keyboard woes on #guix, 
where I was stuck without a backspace key or the key below it (\, 
|) on my ThinkPad X230T's US keyboard.  Both sent out 
‘XF86ScreenSaver’ codes instead.

I tried dozens of things, both in my system configuration and by 
running random stateful xkb commands (naughty), and managed to 
‘fix’ the bug without ever finding the cause (very naughty).

I think I was looking for it in all the wrong places.  Something 
goes wrong before the kernel even boots.  Here's my 
keyboard-layout:

(keyboard-layout
 (keyboard-layout
  "us" "dvp"                           ; 
  kaufmann.no/roland/dvorak
  #:model "thinkpad"                   ; pc104, pc105, thinkpad, 
  …
  #:options                            ; list of XKB Option 
  strings
  (list ""                             ; unset all inherited 
  options
        "caps:shiftlock"               ; Shift Lock affects all 
        keys
        "shift:breaks_caps"            ; Shift cancels Caps Lock
        "compose:102"                  ; next to left Shift on 
        pc105
        "lv3:ralt_switch"              ; key to choose 3rd level
        "nbsp:level3n"                 ; nbsp @lv3, thin nbsp 
        @lv4
        "numpad:shift3"                ; Num Lock: Shift chooses 
        lv3
        "kpdl:semi"                    ; key pad semicolon @lv3
        "misc:typo"                    ; add extra typographic 
        chars
        "ctrl:swapcaps"                ; onwards for great Emacs
        "terminate:ctrl_alt_bksp")))   ; zap X just to watch it 
        die

Here's what works just fine:

  (service slim-service-type
           (slim-configuration
            (xorg-configuration
             (xorg-configuration
              (keyboard-layout keyboard-layout)
              …

However, today I tried to (re-)add it to GRUB, too, and ended up 
writing the following comment:

(bootloader
 (bootloader-configuration
  (bootloader grub-efi-bootloader)
  ;; XXX Strange bug: GRUB can read the LUKS passphrase, but 
  afterwards (at
  ;; the menu screen) no longer responds to key presses.  Even 
  stranger: it
  ;; makes my X230T's backspace key send ‘XF86ScreenSaver’s even 
  on Linux.
  ;; (keyboard-layout keyboard-layout)
  (target "/boot/efi")
  (timeout 1))))

This is 100% reproducible.

I'll try to narrow it down a bit, but the combination of losing my 
actual work-workstation (which is also my funstation) while 
entering my passphrase 5 times, every time, makes that an 
unpleasant and tedious affair.

Kind regards,

T G-R
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#35583; Package guix. (Mon, 06 May 2019 09:40:03 GMT) Full text and rfc822 format available.

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

From: Ludovic Courtès <ludo <at> gnu.org>
To: Tobias Geerinckx-Rice <me <at> tobias.gr>
Cc: 35583 <at> debbugs.gnu.org
Subject: Re: bug#35583: Setting a GRUB keyboard-layout breaks GRUB… and Linux‽
Date: Mon, 06 May 2019 11:39:42 +0200
Hi Tobias,

Tobias Geerinckx-Rice <me <at> tobias.gr> skribis:

> However, today I tried to (re-)add it to GRUB, too, and ended up
> writing the following comment:
>
> (bootloader
>  (bootloader-configuration
>   (bootloader grub-efi-bootloader)
>   ;; XXX Strange bug: GRUB can read the LUKS passphrase, but
> afterwards (at
>   ;; the menu screen) no longer responds to key presses.  Even
> stranger: it
>   ;; makes my X230T's backspace key send ‘XF86ScreenSaver’s even on
> Linux.
>   ;; (keyboard-layout keyboard-layout)
>   (target "/boot/efi")
>   (timeout 1))))
>
> This is 100% reproducible.

Even in ‘guix system vm --full-boot’, right?

It could be that the XKB → GRUB conversion fails.  You can see
conversion process in (gnu bootloader grub).  In that case, that would
be a ‘grub-mklayout’ or a ‘ckbcomp’ bug.

I’ve only tested this stuff with standard keyboard layouts with one or
two options at most, so it may be that you’re pushing it to its limits.

I’m surprised what GRUB does has an impact on what Linux does
afterwards, though.

Thanks,
Ludo’.




This bug report was last modified 6 years and 37 days ago.

Previous Next


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