|
1 | | -#⚠️ Known Limitation: LUKS Keyboard Layout |
2 | 1 |
|
3 | | ->⚠️**Important for non-US keyboard users:** |
4 | | ->The keyboard layout selected during installation is not used for the LUKS unlock screen. Regardless of your selection during the installation process, the keyboard layout available for the LUKS unlock screen will default to`en-US` (English - United States of America). |
5 | | -> |
6 | | ->This means characters on your keyboard may produce different letters than expected when typing your passphrase at boot time. |
| 2 | +#⚠️ Known Limitation — LUKS Keyboard Layout |
7 | 3 |
|
8 | | ---- |
9 | | - |
10 | | -##During Installation |
11 | | - |
12 | | -To avoid problems unlocking your system after installation: |
13 | | -- Consider setting a disk encryption passphrase that only uses characters that are in the same position on both your keyboard layout and the US layout |
14 | | -- Avoid special characters that may be in different positions across keyboard layouts |
15 | | - |
16 | | ->💡**Simplest solution:** |
17 | | ->-**Use a passphrase made only of numbers and/or letters A–Z.** |
18 | | ->- These characters are almost always in the same position across all keyboard layouts and will work reliably at the unlock screen. |
| 4 | +>⚠️**Important for non‑US keyboard users:** |
| 5 | +>The keyboard layout selected during installation is**not** used for the LUKS unlock screen. The early‑boot environment defaults to**`en‑US`**. |
| 6 | +>As a result, the keys you press may produce different characters when you enter your passphrase at boot. |
19 | 7 |
|
20 | 8 | --- |
21 | 9 |
|
22 | | -##After Installation – First Boot |
| 10 | +##During Installation |
| 11 | +- Choose a passphrase you can type on**both** US‑QWERTY*and* your local layout,**or** |
| 12 | +- Use only**A–Z** and**0–9** (keys that do not change position). |
23 | 13 |
|
24 | | ->✅**You can skip this section if:** |
25 | | ->You used the**simplest passphrase** — only**letters A–Z and/or numbers 0–9**, |
26 | | ->and you are able to unlock your encrypted disk without any issues. |
27 | | -> |
28 | | ->🎉 You're all set —**no further changes are necessary.** |
| 14 | +>💡**Simplest solution:** use a passphrase made**only** of letters A–Z and/or numbers 0–9. These keys map the same on nearly every layout and will always work at the unlock prompt. |
29 | 15 |
|
30 | 16 | --- |
31 | 17 |
|
32 | | ->⚠️**Follow the instructions below if:** |
33 | | ->- You use**special characters** in your passphrase,**or** |
34 | | ->- Your keyboard layout is**not en-US**, and |
35 | | ->- You**cannot reliably enter your passphrase** at the LUKS unlock screen. |
| 18 | +##After Installation (first boot) |
36 | 19 |
|
37 | | -Follow the steps below based on your Linux distribution to permanently apply your keyboard layout during early boot: |
| 20 | +>✅**Skip the entire section below** if you used only A–Z/0‑9**and** you can already unlock successfully. |
38 | 21 |
|
39 | | ---- |
| 22 | +###✅ Fedora Atomic desktops |
| 23 | +*(Silverblue / Kinoite / Bazzite / Bluefin …)* |
40 | 24 |
|
41 | | -###✅ For Atomic desktops (Silverblue, Kinoite, Bazzite, Bluefin): |
| 25 | +# 1 Write your keymap |
| 26 | +echo 'KEYMAP=de' | sudo tee /etc/vconsole.conf |
42 | 27 |
|
43 | | -```bash |
44 | | -# 1. Set your desired keymap in /etc/vconsole.conf |
45 | | -# Replace 'de' with your actual layout (e.g., fr, uk, colemak) |
46 | | -echo'KEYMAP=de'| sudo tee /etc/vconsole.conf |
| 28 | +# 2 Track that file so every future deployment includes it |
| 29 | +sudo rpm-ostree initramfs-etc --track=/etc/vconsole.conf |
47 | 30 |
|
48 | | -# 2. Track the file so it gets included in future initramfs builds |
49 | | -sudo rpm-ostree initramfs-etc --track=/etc/vconsole.conf |
| 31 | +# 3 Rebuild the initramfs now *and* enable automatic rebuilds |
| 32 | +sudo rpm-ostree initramfs --enable |
50 | 33 |
|
51 | | -# 3. Regenerate the initramfs now so the change applies immediately |
52 | | -sudo dracut -f |
| 34 | +# 4 (Optional but harmless) force a dracut run on the current deployment |
| 35 | +sudo dracut -f |
53 | 36 |
|
54 | | -# 4. Reboot to apply the updated initramfs and keyboard layout |
55 | | -sudo reboot |
56 | | -``` |
| 37 | +# 5 Reboot |
| 38 | +sudo reboot |
57 | 39 |
|
58 | 40 | --- |
59 | 41 |
|
60 | | -###✅ For Fedora Workstation and other traditional RPM-based systems: |
61 | | - |
62 | | -```bash |
63 | | -# 1. Set your desired keymap in /etc/vconsole.conf |
64 | | -sudo nano /etc/vconsole.conf |
65 | | -# Example content: |
66 | | -# KEYMAP=de |
67 | | - |
68 | | -# 2. Rebuild the initramfs |
69 | | -sudo dracut -f |
| 42 | +###✅ Fedora Workstation / Server (traditional RPM systems) |
70 | 43 |
|
71 | | -# 3. Reboot to apply the updated layout |
72 | | -sudoreboot |
73 | | -``` |
| 44 | +sudo nano /etc/vconsole.conf # add or edit: KEYMAP=de |
| 45 | +sudodracut -fv --regenerate-all # rebuild every installed kernel |
| 46 | +sudo reboot |
74 | 47 |
|
75 | 48 | --- |
76 | 49 |
|
77 | | -###✅ ForUbuntu and Ubuntu-based systems: |
| 50 | +###✅ Ubuntu & Debian‑based systems |
78 | 51 |
|
79 | | -```bash |
80 | | -# 1. Edit the keyboard configuration file |
81 | | -sudo nano /etc/default/keyboard |
82 | | -# Example: XKBLAYOUT="de" |
83 | | - |
84 | | -# 2. Optionally reconfigure to regenerate supporting files |
85 | | -sudo dpkg-reconfigure keyboard-configuration |
86 | | - |
87 | | -# 3. Rebuild the initramfs |
88 | | -sudo update-initramfs -u |
89 | | - |
90 | | -# 4. Reboot to apply the changes |
91 | | -sudo reboot |
92 | | -``` |
93 | | - |
94 | | -Once your system reboots, your chosen keymap will be applied during the early boot process and at the LUKS unlock screen. You can then safely change your disk encryption passphrase using GNOME Disks or a terminal tool like`cryptsetup` if desired. |
| 52 | +sudo nano /etc/default/keyboard # e.g. XKBLAYOUT="de" |
| 53 | +sudo dpkg-reconfigure keyboard-configuration # interactive; rebuilds current initrd |
| 54 | +sudo update-initramfs -u -k all # rebuild all other initrds |
| 55 | +sudo reboot |
95 | 56 |
|
96 | 57 | --- |
97 | 58 |
|
98 | | -##🛠️ If You Can't Boot (Emergency Recovery) |
| 59 | +###✅ Arch Linux & derivatives |
99 | 60 |
|
100 | | -If you're unable to enter your passphrase correctly at the LUKS unlock screen due to the wrong keymap, you can temporarily set the correct layout from the GRUB menu: |
| 61 | +echo 'KEYMAP=de' | sudo tee /etc/vconsole.conf |
| 62 | +sudo sed -i 's/^HOOKS=.*/HOOKS=(base udev autodetect modconf kms keyboard keymap encrypt filesystems)/' /etc/mkinitcpio.conf |
| 63 | +sudo mkinitcpio -P # rebuild every preset |
| 64 | +sudo reboot |
101 | 65 |
|
102 | 66 | --- |
103 | 67 |
|
104 | | -###✅ For Fedora-based systems (Atomic or traditional): |
| 68 | +##🛠️ Emergency Unlock (if the keymap is wrong) |
105 | 69 |
|
106 | | -1. At the GRUB boot menu, press`e` to edit the boot entry |
107 | | -2. Find the line starting with`linux` (the longest line) |
108 | | -3. Add this to the end of the line: |
109 | | -``` |
110 | | - rd.vconsole.keymap=de |
111 | | -``` |
112 | | - Replace`de` with your desired layout |
113 | | -4. Press`Ctrl+X` or`F10` to boot |
114 | | -5. After logging in, follow the permanent fix steps above to make it persist |
| 70 | +###Fedora / Atomic |
| 71 | +1. At the GRUB menu press**e**. |
| 72 | +2. Append`rd.vconsole.keymap=de` to the end of the`linux` line. |
| 73 | +3. Boot with**Ctrl + X** or**F10**. |
| 74 | +4. After login, apply the permanent fix above. |
115 | 75 |
|
116 | | ---- |
| 76 | +###Ubuntu family |
117 | 77 |
|
118 | | -###✅ For Ubuntu-based systems: |
119 | | - |
120 | | -1. Boot into**Recovery Mode** from the GRUB menu |
121 | | -2. Select**"Drop to root shell prompt"** |
122 | | -3. Remount the filesystem with write permissions: |
123 | | -```bash |
124 | | - mount -o remount,rw / |
125 | | -``` |
126 | | -4. Edit the keyboard layout: |
127 | | -```bash |
128 | | - nano /etc/default/keyboard |
129 | | -``` |
130 | | -5. (Optional) Reconfigure the keyboard: |
131 | | -```bash |
132 | | - dpkg-reconfigure keyboard-configuration |
133 | | -``` |
134 | | -6. Rebuild the initramfs: |
135 | | -```bash |
136 | | - update-initramfs -u |
137 | | -``` |
138 | | -7. Reboot: |
139 | | -```bash |
140 | | - reboot |
141 | | -``` |
| 78 | +# At GRUB choose “Recovery Mode → root shell” |
| 79 | +mount -o remount,rw / |
| 80 | +nano /etc/default/keyboard # set XKBLAYOUT="de" |
| 81 | +update-initramfs -u -k all |
| 82 | +reboot |
142 | 83 |
|
143 | 84 | --- |
144 | 85 |
|
145 | | -##📘 Additional Notes |
146 | | - |
147 | | -- To list available keymaps: |
148 | | -```bash |
149 | | - localectl list-keymaps| grep -i<lang> |
150 | | -``` |
| 86 | +##📘 Helpful Commands |
151 | 87 |
|
152 | | -- These changes affect the**initramfs environment** (LUKS unlock screen and early boot TTYs). Once your desktop session starts, it will follow the layout defined in your user settings. |
| 88 | +# List available keymaps |
| 89 | +localectl list-keymaps | grep -i <lang> |
153 | 90 |
|
154 | | ---- |
| 91 | +# Verify your map is embedded in the current initrd |
| 92 | +lsinitramfs /boot/initrd.img-$(uname -r) | grep kmap |
155 | 93 |
|
156 | | -This guide ensuresyourkeymapisfullyandcorrectly applied across all boot stages and system variants. |
| 94 | +Once these steps are complete,yourchosen layoutisactive at the LUKS prompt, early TTYs,andPlymouth. Your desktop environment continues to use the layout configured in GNOME, KDE, etc. |