PDA

View Full Version : How to select English (US) keyboard layout when preseeding with Ubiquity.



arto7177
April 5th, 2013, 04:53 PM
I am attempting to automate an install of the Ubuntu 12.10 LiveCD (on a USB). The Installer will do everything except automatically pick a keyboard layout. Below is the portion of my preseed3.cfg that should select the language and keyboard layout. Ubiquity will correctly install everything, It just requires that I choose a keyboard layout before it will proceed. Is English (US) the correct argument (I have also tried USA, en, and English) or is there another preseed option which selects the layout.


ubiquity languagechooser/language-name select English
ubiquity countrychooser/shortlist select US
ubiquity time/zone select America/Los_Angeles
ubiquity debian-installer/locale select en_US.UTF-8
ubiquity localechooser/supported-locales multiselect en_US.UTF-8
ubiquity console-setup/ask_detect boolean false
ubiquity console-setup/layoutcode string us
ubiquity console-setup/modelcode string SKIP
ubiquity keyboard-configuration/variant select English (US)
ubiquity keyboard-configuration/layout select English (US)
ubiquity keyboard-configuration/model select Generic 105-key (Intl) PC
ubiquity console-keymaps-at/keymap select us
ubiquity keyboard-configuration/xkb-keymap select us
console-setup console-setup/layoutcode string us
console-setup console-setup/layout select U.S. English
console-setup console-setup/variantcode select U.S. English

Here is the portion of my menu which launches the installer and loads preseed3.cfg into the initrd. My understanding is that I may need an argument which specifies the layout before ubiquity actually launches. I do not know which argument to use if one is needed.



label unattended menu label ^Unattended Installation kernel /casper/vmlinuz append cdrom-detect/try-usb=true file=/cdrom/preseed/preseed3.seed boot=casper automatic-ubiquity initrd=/casper/initrd.lz quiet splash noprompt ---

If anyone also knows a location where I can find all the arguments which can be used in the preseed, https://help.ubuntu.com/12.04/installation-guide/example-preseed.txt does not contain them all I might be able to solve this problem.

dino99
April 5th, 2013, 05:02 PM
similar blogpost; maybe you'll find the answer : http://www.mybinarylife.net/2011/07/ubuntu-1104-custom-ubiquity-installer.html

grahammechanical
April 5th, 2013, 05:15 PM
What you are doing is way beyond my skill set. So, all I can give is another pair of eyes. From the link that you give I see this:



# Keyboard selection.# Disable automatic (interactive) keymap detection.
d-i console-setup/ask_detect boolean false
#d-i keyboard-configuration/modelcode string pc105d-i
keyboard-configuration/layoutcode string us
# To select a variant of the selected layout (if you leave this out, the
# basic form of the layout will be used):
#d-i keyboard-configuration/variantcode string dvorak

And from the link provide by dino99 I see this:


# Detect keyboard layout?
keyboard-configuration console-setup/ask_detect boolean false
keyboard-configuration console-setup/detected note
keyboard-configuration keyboard-configuration/model select Generic 105-key (Intl) PC

I compare it with your arguments and I see a difference:


ubiquity console-setup/ask_detect boolean false
ubiquity console-setup/layoutcode string us
ubiquity console-setup/modelcode string SKIP

It may be just nothing. Regards.

arto7177
April 6th, 2013, 05:31 AM
I just want to say I figured it out. As i suspected I did need to add another argument to the append in my text menu. I stumbled onto this blog post http://sshrootat.blogspot.com/2011/04/preseeding-ubuntu-natty-1104.html after posting. I added bother keyboard-configuration/layoutcode=us and console-setup/ask_detect=false. My final append ended up looking like.
append cdrom-detect/try-usb=true file=/cdrom/preseed/preseed3.seed keyboard-configuration/layoutcode=us and console-setup/ask_detect=false boot=casper automatic-ubiquity initrd=/casper/initrd.lz quiet splash noprompt ---
I am not sure if console-setup/ask_detect=false is needed, but I put it in just to be sure.