GNU bug report logs - #81064
LUKS: Wrong keyboard layout at GRUB LUKS prompt

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix; Reported by: Mathieu <mathieu@HIDDEN>; dated Sun, 17 May 2026 12:27:03 UTC; Maintainer for guix is bug-guix@HIDDEN.

Message received at 81064 <at> debbugs.gnu.org:


Received: (at 81064) by debbugs.gnu.org; 26 May 2026 06:25:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 26 02:25:43 2026
Received: from localhost ([127.0.0.1]:57560 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wRlEV-00063R-A0
	for submit <at> debbugs.gnu.org; Tue, 26 May 2026 02:25:43 -0400
Received: from mailtransmit05.runbox.com ([2a0c:5a00:149::26]:40542)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <maxim@HIDDEN>)
 id 1wRlEQ-00061M-Pd
 for 81064 <at> debbugs.gnu.org; Tue, 26 May 2026 02:25:41 -0400
Received: from mailtransmit03.runbox ([10.9.9.163] helo=aibo.runbox.com)
 by mailtransmit05.runbox.com with esmtps (TLS1.2) tls
 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.93)
 (envelope-from <maxim@HIDDEN>) id 1wRlEJ-0003Gc-14
 for 81064 <at> debbugs.gnu.org; Tue, 26 May 2026 08:25:31 +0200
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=guixotic.coop; s=selector2; h=Content-Type:MIME-Version:Message-ID:Date:
 References:In-Reply-To:Subject:Cc:To:From;
 bh=RiXdI6BZEsQidKrrr5krjVaBjPZg9IHG10aAQu1CoyY=; b=DVx3wDkw/J/qT9xnmoDHTupsIl
 uAwbLCEW1MuHrhVq/gLXOILmwLcAt+SXDd7d2wVkF8lZhZdyJ/q2MegPXhuZtaIE28+xj1LE84aCk
 WX+ikBUFgLp9lF/tezzGa1sAYMUhEWKOEJLDC/M6YDsoz4L/zTjHYxPsqEIN9Nr2aZUm1nx0MVVTc
 +Ed7zQoJIIeVnV/2Ck7e26JMps8FscditI+cevLsegdW0YGBS8eXT1yk7HLB8c2Z62mi/W1zdnd0S
 L2aZcd4AYrqJekWuWepk0hY8RfhNP5HUdcpYZn0BrbbPLpcgsgiuMwDf2nTt4tzZWGrbQFQUmoIpE
 rMzBPvag==;
Received: from [10.9.9.74] (helo=submission03.runbox)
 by mailtransmit03.runbox with esmtp (Exim 4.86_2)
 (envelope-from <maxim@HIDDEN>)
 id 1wRlEI-0005ja-Fd; Tue, 26 May 2026 08:25:30 +0200
Received: by submission03.runbox with esmtpsa [Authenticated ID (1476852)]
 (TLS1.2:ECDHE_SECP256R1__RSA_SHA256__AES_256_GCM:256) (Exim 4.95)
 id 1wRlE1-00Awmc-24; Tue, 26 May 2026 08:25:13 +0200
From: Maxim Cournoyer <maxim@HIDDEN>
To: Mathieu <mathieu@HIDDEN>
Subject: Re: bug#81064: LUKS: Wrong keyboard layout at GRUB LUKS prompt
In-Reply-To: <3bb6ffa9-21de-4a47-a3af-b911d55df6a2@HIDDEN>
 (mathieu@HIDDEN's message of "Sun, 17 May 2026 15:25:39 +0300")
Organization: Guixotic
References: <3bb6ffa9-21de-4a47-a3af-b911d55df6a2@HIDDEN>
Date: Tue, 26 May 2026 15:25:10 +0900
Message-ID: <87jysqelh5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81064
Cc: 81064 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Hi Mathieu,

Could you test your hypothesis by manually editing (as root) your
/boot/grub/grub.cfg file and rebooting?

And where is your keymap located? If it's in your encrypted root file
system, that would be another reason why GRUB has to prompt for your
LUKS passphrase before your keymap can be loaded.

On my system:

$ grep -i key /boot/grub/grub.cfg 
insmod keylayouts
keymap /@root/gnu/store/xl5j57iif0smly7667nb9k7kl8l7814i-grub-keymap.us

-- 
Thanks,
Maxim




Information forwarded to bug-guix@HIDDEN:
bug#81064; Package guix. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 17 May 2026 12:26:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 17 08:26:31 2026
Received: from localhost ([127.0.0.1]:42171 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1wOaZg-0008BU-Bw
	for submit <at> debbugs.gnu.org; Sun, 17 May 2026 08:26:31 -0400
Received: from lists1p.gnu.org ([2001:470:142::17]:60484)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <mathieu@HIDDEN>) id 1wOaZc-000873-S1
 for submit <at> debbugs.gnu.org; Sun, 17 May 2026 08:26:26 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <mathieu@HIDDEN>) id 1wOaZD-0004r0-0U
 for bug-guix@HIDDEN; Sun, 17 May 2026 08:25:59 -0400
Received: from 4.mo584.mail-out.ovh.net ([178.32.98.131])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <mathieu@HIDDEN>) id 1wOaZA-0003Bs-Sg
 for bug-guix@HIDDEN; Sun, 17 May 2026 08:25:58 -0400
Received: from director4.ghost.mail-out.ovh.net (unknown [10.110.0.173])
 by mo584.mail-out.ovh.net (Postfix) with ESMTP id 4gJKsM4Zvyz8BpC
 for <bug-guix@HIDDEN>; Sun, 17 May 2026 12:25:43 +0000 (UTC)
Received: from ghost-submission-7d8d68f679-6t6vm (unknown [10.110.178.109])
 by director4.ghost.mail-out.ovh.net (Postfix) with ESMTPS id A742DC22E8
 for <bug-guix@HIDDEN>; Sun, 17 May 2026 12:25:42 +0000 (UTC)
Received: from darce.fr ([37.59.142.114])
 by ghost-submission-7d8d68f679-6t6vm with ESMTPSA
 id VyPRMcWzCWpuPToAFaVvuQ (envelope-from <mathieu@HIDDEN>)
 for <bug-guix@HIDDEN>; Sun, 17 May 2026 12:25:42 +0000
Authentication-Results: garm.ovh; auth=pass
 (GARM-114S008217b75e8-2fff-4f66-ac7d-715859086d9a,
 E6F47A28A4EBE68FA5799244E40CB55B7171E7C5) smtp.auth=transfert@HIDDEN
X-OVh-ClientIp: 102.17.118.19
Content-Type: multipart/alternative;
 boundary="------------1vfcy1LdvQEsWJUVjQfFLtkb"
Message-ID: <3bb6ffa9-21de-4a47-a3af-b911d55df6a2@HIDDEN>
Date: Sun, 17 May 2026 15:25:39 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: bug-guix@HIDDEN
Content-Language: en-US
From: Mathieu <mathieu@HIDDEN>
Subject: LUKS: Wrong keyboard layout at GRUB LUKS prompt
x-ovh-tracer-id: 12954322853286391149
X-VR-SPAMSTATE: OK
X-VR-SPAMSCORE: 0
X-VR-SPAMCAUSE: dmFkZTEkryh7A5UTyKfI6bFEf6SA1lx14oSLNSgbDS7GNVurhrBgze6J1RU2bk1YzEJDjT5UjxuuZ6aCaYCXz7xqd0s8L11m7RWj7bjIu2zeiIyN9V65mivcYPuSy8j6iITysmJh8gxa84l1yqeFw+nWRkYnMq7GwLIFJqghpqHA/fsHZgg5zQx/hQmEh+w6iBHjC/bA4HGbTKfze1vEaOUBxqs+qvOPBDsIuVx++j96mH+3NiZAvGjsTbWRGuHqs8kYbagP2ojSj93jkhscUch4rqGeCKAr3C/ahx2Bi+QwGcKgS+jk8+sMYw0BeFpYExVQOGtuT/Pn6HHuaH1nk5xQCNtSuAm5uHLB5JkNtdHr4B0vhfZciUPevtk2eGUfEoP+MUSLTcZaGuYoTAApASoffR+WOFE7p8G75slwO9NJVW8kXUXMOYiHfywjhS29BYEAk3FVtkMrGOz6KGKagooQoNIJ4BOeQ+TbuDfHwTvNcbBS4vhT5Yt4LxLTxlFcMTZ5zi3TWwauC4rAMFJU8Uc3BlEdt3h/Xq38CiD6RSkJg/gZMzzb7kTPdus/FLod9XjMvP+1OiEUPv0EJojdLFktWA8KCY7Dt4jR4pyxzIKNFziGejCDJlVF9tESm7qfEMwYk0jFbHf8e95P5TCUE17ISoRlCegRwRf+3zCOUgQtEs/0rg
Received-SPF: pass client-ip=178.32.98.131; envelope-from=mathieu@HIDDEN;
 helo=4.mo584.mail-out.ovh.net
X-Spam_score_int: -18
X-Spam_score: -1.9
X-Spam_bar: -
X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, HTML_MESSAGE=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.1 (/)

This is a multi-part message in MIME format.
--------------1vfcy1LdvQEsWJUVjQfFLtkb
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hello,

I would like to report an issue related to encrypted systems using LUKS 
and non-US keyboard layouts in GNU Guix with GRUB EFI.

On my laptop, the LUKS passphrase prompt during early boot always uses a 
US/QWERTY keyboard layout, even though the system is configured with:

|(keyboard-layout (keyboard-layout "fr" "azerty")) |

both at the |operating-system| level and inside |bootloader-configuration|.

Interestingly, once the GRUB menu itself appears, the French AZERTY 
layout works correctly. This strongly suggests that the keymap is loaded 
too late in the GRUB initialization sequence.

After investigation, I found that the generated |/boot/grub/grub.cfg| 
contains:

|insmod luks insmod luks2 cryptomount -u ... ... insmod keylayouts 
keymap /gnu/store/...-grub-keymap.fr |

This means the |cryptomount| commands (and therefore the LUKS passphrase 
prompt) occur before the French keymap is loaded.

As a result:

  *

    the LUKS prompt appears to interpret input as US/QWERTY;

  *

    the configured keyboard layout only becomes active afterward, once
    the GRUB menu appears.

Therefore, it seems that Guix currently generates the GRUB configuration 
in an order that may prevent non-US keyboard layouts from being applied 
to early LUKS passphrase prompts.

For context:

  *

    |/boot| itself is not encrypted;

  *

    this occurs on a laptop using GRUB EFI;

  *

    on another machine accessed through IPMI Serial-over-LAN, the issue
    is not visible because input handling differs through the serial
    console.

For transparency: this report was written with the assistance of 
ChatGPT, under my direction. ChatGPT helped identify the likely root 
cause by analyzing the generated |grub.cfg| and noticing that the 
|keymap| command is inserted after the |cryptomount| commands.

Thank you for your work on GNU Guix and GRUB integration.

Best regards,
Mathieu


--------------1vfcy1LdvQEsWJUVjQfFLtkb
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit

<!DOCTYPE html>
<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello,</p>
    <p>I would like to report an issue related to encrypted systems
      using LUKS and non-US keyboard layouts in GNU Guix with GRUB EFI.</p>
    <p>On my laptop, the LUKS passphrase prompt during early boot always
      uses a US/QWERTY keyboard layout, even though the system is
      configured with:</p>
    <pre><code class="language-scheme">(keyboard-layout (keyboard-layout "fr" "azerty"))
</code></pre>
    <p>both at the <code>operating-system</code> level and inside <code>bootloader-configuration</code>.</p>
    <p>Interestingly, once the GRUB menu itself appears, the French
      AZERTY layout works correctly. This strongly suggests that the
      keymap is loaded too late in the GRUB initialization sequence.</p>
    <p>After investigation, I found that the generated <code>/boot/grub/grub.cfg</code>
      contains:</p>
    <pre><code class="language-grub">insmod luks
insmod luks2
cryptomount -u ...
...
insmod keylayouts
keymap /gnu/store/...-grub-keymap.fr
</code></pre>
    <p>This means the <code>cryptomount</code> commands (and therefore
      the LUKS passphrase prompt) occur before the French keymap is
      loaded.</p>
    <p>As a result:</p>
    <ul>
      <li>
        <p>the LUKS prompt appears to interpret input as US/QWERTY;</p>
      </li>
      <li>
        <p>the configured keyboard layout only becomes active afterward,
          once the GRUB menu appears.</p>
      </li>
    </ul>
    <p>Therefore, it seems that Guix currently generates the GRUB
      configuration in an order that may prevent non-US keyboard layouts
      from being applied to early LUKS passphrase prompts.</p>
    <p>For context:</p>
    <ul>
      <li>
        <p><code>/boot</code> itself is not encrypted;</p>
      </li>
      <li>
        <p>this occurs on a laptop using GRUB EFI;</p>
      </li>
      <li>
        <p>on another machine accessed through IPMI Serial-over-LAN, the
          issue is not visible because input handling differs through
          the serial console.</p>
      </li>
    </ul>
    <p>For transparency: this report was written with the assistance of
      ChatGPT, under my direction. ChatGPT helped identify the likely
      root cause by analyzing the generated <code>grub.cfg</code> and
      noticing that the <code>keymap</code> command is inserted after
      the <code>cryptomount</code> commands.</p>
    <p>Thank you for your work on GNU Guix and GRUB integration.</p>
    <p>Best regards,<br>
      Mathieu</p>
    <p><br>
    </p>
  </body>
</html>

--------------1vfcy1LdvQEsWJUVjQfFLtkb--




Acknowledgement sent to Mathieu <mathieu@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-guix@HIDDEN. Full text available.
Report forwarded to bug-guix@HIDDEN:
bug#81064; Package guix. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Tue, 26 May 2026 06:30:03 UTC

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