On 23/08/2019 11:50, Christopher Gregory via blfs-support wrote:
> 
> 
>> Sent: Friday, August 23, 2019 at 9:05 PM
>> From: "Christopher Gregory via blfs-support" 
>> <[email protected]>
>> To: [email protected]
>> Cc: "Christopher Gregory" <[email protected]>
>> Subject: Re: [blfs-support] gdm: how to use a non us keyboard?
>>
>>
>>
>>> Sent: Friday, August 23, 2019 at 7:25 PM
>>> From: "Pierre Labastie via blfs-support" 
>>> <[email protected]>
>>> To: [email protected]
>>> Cc: "Pierre Labastie" <[email protected]>
>>> Subject: Re: [blfs-support] gdm: how to use a non us keyboard?
>>>
>>> On 23/08/2019 04:14, Christopher Gregory via blfs-support wrote:
>>>> Hello,
>>>>
>>>> There is a thread from earlier this year that I found regarding gdm and 
>>>> non-us keyboards.  Though some of it is systemd related, the same files 
>>>> should be able to be modified for e-logind:
>>>>
>>>> https://forums.nomachine.com/topic/wrong-keyboard-layout-during-login-in-ubuntu
>>>>
>>>> The main fix seems to be at the last post, but even in that post the 
>>>> person who posted the solution refers to a post they made further up.
>>>>
>>>> Regards,
>>>>
>>>> Christopher.
>>>>
>>>>> Sent: Friday, August 23, 2019 at 10:14 AM
>>>>> From: "Ken Moffat via blfs-support" 
>>>>> <[email protected]>
>>>>> To: "BLFS Support List" <[email protected]>
>>>>> Cc: "Ken Moffat" <[email protected]>
>>>>> Subject: Re: [blfs-support] gdm: how to use a non us keyboard?
>>>>>
>>>>> On Thu, Aug 22, 2019 at 06:41:21PM +0200, Pierre Labastie via 
>>>>> blfs-support wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I've completed the build of BLFS Sysv-elogind on LFS-9.0-rc1. Apart from 
>>>>>> what
>>>>>> I've already reported, things are going rather well, but I have a 
>>>>>> problem with
>>>>>> gdm: At first I thought it was not working, since I could not log in, 
>>>>>> while I
>>>>>> could "startx" gnome, or lxde without problem.
>>>>>>
>>>>>> Then, I noticed that when "startx'ing" gnome, the keyboard was set to us,
>>>>>> while I have:
>>>>>> Section "InputClass"
>>>>>>         Identifier "libinput keyboard catchall"
>>>>>>         MatchIsKeyboard "on"
>>>>>>         MatchDevicePath "/dev/input/event*"
>>>>>>         Driver "libinput"
>>>>>>         Option "XkbLayout" "fr"
>>>>>> in /etc/X11/xorg.conf.d/40-libinput.conf
>>>>>>
>>>>>> Inside gnome, I could add a keyboard using the settings manager, and 
>>>>>> switch to
>>>>>> the fr layout, but this made me think that the keyboard layout in gdm was
>>>>>> still us. So I typed my password as if I was on a us keyboard (well, not 
>>>>>> so
>>>>>> easy :), and bingo, gnome started...
>>>>>>
>>>>>> So gdm is working, but I've not found any way to have it use a French kb 
>>>>>> layout...
>>>>>>
>>>>>> I've tried adding "setxkbmap fr" at the end of /etc/gdm/Init/Default, 
>>>>>> but it
>>>>>> did not work.
>>>>>> So I do not know where to set this.
>>>>>>
>>>>>> Note that American or British users are not likely to be affected :)
>>>>>>
>>>>>> Pierre
>>>>>
>>>>> Actually, British users will affected a little (but clearly not as
>>>>> much as people with azerty or qwertz keyboards) - in Britain we have
>>>>> '£' where americans have '#', we swap '"' and '@', and '#' + '~',
>>>>> '|' + '\' move around (ISTR British '|' and '\' are on a key
>>>>> position which American keymaps lack).
>>>>>
>>>>> Good Luck with this, there are lots of old reports related to this,
>>>>> but things may have changed in newer versions of gnome.  The Arch
>>>>> wiki appears to suggest updating the Xorg configuration (or using
>>>>> localectl for systemd) and restarting X (presumably a reboot if in
>>>>> runlevel 5).
>>>>>
>>>>> I notice you have done this in 40-libinput.conf as the catchall, in
>>>>> my own builds I separate the keyboard definition to an earlier file.
>>>>>
>>>>> The example at Arch for Xorg, linked from the gdm page
>>>>> https://wiki.archlinux.org/index.php/GDM is
>>>>> https://wiki.archlinux.org/index.php/Xorg/Keyboard_configuration#Using_X_configuration_files
>>>>> with 00-keyboard.conf, so it gets read first, and uses
>>>>> Identifier "system-keyboard" - I can't believe that the name
>>>>> _ought_ to be important, but perhaps it is.
>>>>>
>>>>> On the desktop where I'm writing this with a British keyboard I
>>>>> have:
>>>>>
>>>>> 10-quirks.conf
>>>>>
>>>>> Default modifications for specific pointing devices or a specific
>>>>> accelerometer.
>>>>>
>>>>> 11-keyboard.conf
>>>>>
>>>>> My own keyboard settings (two extended variant gb maps with compose
>>>>> and group switching) - described as Identifier "keyboard-all" :
>>>>>
>>>>> Section "InputClass"
>>>>>         Identifier "keyboard-all"
>>>>>         Driver "libinput"
>>>>>         # for my own russian variant, specific to a gb keyboard, I put it 
>>>>> in gb
>>>>>         Option "XkbLayout" "gb,gb"
>>>>>         # I assume that the model will remain as evdev
>>>>>         Option "XkbModel" "evdev"
>>>>>         # add my own 'deader' gb variant - more dead keys
>>>>>         Option "XkbVariant" "deader,rusphon"
>>>>>         Option "XkbOptions" 
>>>>> "ctrl_alt_bksp,grp:lctrl_lwin_rctrl_menu,compose:caps"
>>>>>         MatchIsKeyboard "on"
>>>>> EndSection
>>>>>
>>>>> 40-libinput.conf
>>>>>
>>>>> which includes
>>>>>
>>>>> Section "InputClass"
>>>>>         Identifier "libinput keyboard catchall"
>>>>>         MatchIsKeyboard "on"
>>>>>         MatchDevicePath "/dev/input/event*"
>>>>>         Driver "libinput"
>>>>> EndSection
>>>>>
>>>>> All I can suggest is to move the keyboard definitions to an earlier
>>>>> file and restart X (which probably means rebooting from runlevel 5).
>>>>>
>>>>> Ah, I continued looking for anything which might be relevant (rather
>>>>> than the more common unsolved, or solved by an upgrade, results) and
>>>>> found an old (January 2015) comment in a mageia thread
>>>>>
>>>>> https://bugs.mageia.org/show_bug.cgi?id=14476 (Comment 23) :
>>>>>
>>>>> | The installer should (AFAIK) write the correct vconsole.conf file,
>>>>> | but it might not add a dropin file (that systemd manipulates) into
>>>>> | /etc/X11/xorg.conf.d/00-keyboard.conf (which is a file manipulated
>>>>> | by localed to provide the systemd services).
>>>>>
>>>>> And, of course, gdm assumes systemd will be running.
>>>>> So, 00-keyboard.conf might be required.
>>>>>
>>>>> ĸen
>>>>> -- 
>>>>> Adopted by dwarfs, brought up by dwarfs.  To dwarfs I'm a dwarf, sir.
>>>>> I can do the rite of k'zakra, I know the secrets of h'ragna, I can
>>>>> ha'lk my g'rakha correctly ... I am a dwarf
>>>>>            Captain Carrot Ironfoundersson (in The Fifth Elephant)
>>>>> -- 
>>>>> http://lists.linuxfromscratch.org/listinfo/blfs-support
>>>>> FAQ: http://www.linuxfromscratch.org/blfs/faq.html
>>>>> Unsubscribe: See the above information page
>>>>>
>>>
>>> Thanks to you both for your answers. The thread mentioned by Christopher is
>>> interesting, but the solution seems to use:
>>> localectl set-x11-keymap xx
>>> Problem is that localectl is not available with Sysv-elogind... It certainly
>>> modifies the right config files, but which ones???
>>>
>>> Also, I've tried lightdm and lxdm, and both use the fr keyboard with the
>>> configuration I have. Note that 40-libinput.conf is the only file in
>>> /etc/X11/xorg.conf.d, so there should be no problem with conf ordering 
>>> (unless
>>> a file which comes earlier in alphabetical order in 
>>> /usr/share/X11/xorg.conf.d
>>> may take precedence, but I do not think so).
>>>
>>> So gdm does something different from other dm's. That's always the problem I
>>> have with gnome. They do things differently, but I am unable to know what 
>>> theYou can create a file 99-kb.conf in /usr/share/lightdm/lightdm.conf.d 
>>> with content:
>>> difference is.
>>>
>>> I've also tried to run "gsettings list-recursively", which is supposed to 
>>> give
>>> all the settings in gnome. The relevant keys seem to be in
>>> "org.gnome.desktop.input-sources"
>>> specifically the "sources" and "xkb-options" keys. But where is the doc 
>>> about
>>> those keys? (how do I set them for all users, what is the format, etc). Ah, 
>>> I
>>> think that's what I am able to do when tweaking settings in gnome, but I 
>>> must
>>> be logged in the DE first, and it only makes the change for $USER, and it
>>> saves the settings in a binary file!
>>>
>>> Pierre
>>> -- 
>>> http://lists.linuxfromscratch.org/listinfo/blfs-support
>>> FAQ: http://www.linuxfromscratch.org/blfs/faq.html
>>> Unsubscribe: See the above information page
>>>
>>
>> Hello Pierre,
>>
>> Firstly sorry for top posting before, it was soon after I woke up, and 
>> pre-coffee.
>>
>> You may not have noticed this part of the solution in that thread:
>>
>> You can create a file 99-kb.conf in /usr/share/lightdm/lightdm.conf.d with 
>> content:
>>
>> [SeatDefaults]
>> greeter-setup-script=setxkbmap it
>>
>> It makes lightdm run the setxkbmap command just before launching the login 
>> screen, overriding other configurations.
>>
>>
>> Try adding that 99-kb.conf to /etc/gdm
>>
>> Once added, restart gdm
>>
>> Regards,
>>
>> Christopher.
>>
>>
>> -- 
>> http://lists.linuxfromscratch.org/listinfo/blfs-support
>> FAQ: http://www.linuxfromscratch.org/blfs/faq.html
>> Unsubscribe: See the above information page
>>
> 
> Hello Pierre,
> 
> I found another solution at gentoo forums, just omit step 2, as the poster 
> found it was not needed:
> 
> Your problem piqued my curiosity, so I have just now installed the GNOME 3 
> edition of Sabayon Linux (a binary derivative of Gentoo with its own overlay) 
> in a virtual machine. I opted to use Sabayon Linux to investigate your 
> problem because it is quick to install and similar to Gentoo. Sabayon Linux 
> uses systemd rather than OpenRC, but I found that, even with systemd, GNOME 3 
> in Sabayon Linux exhibits the same problem you are experiencing. So I don't 
> think the problem is specific to dantrell's OpenRC edition of GNOME 3; I 
> think it is a general problem with GNOME 3.
> 
> Anyway, I did get GDM to use the German keyboard by default in the end, but 
> it took a bit of messing around to get it to work:
> 
> Step 1. I did the usual set up of the German locale that has already been 
> discussed:
> 
> Code: 
> # cat /etc/locale.gen
> en_GB ISO-8859-1
> en_GB.UTF-8 UTF-8
> de_DE ISO-8859-1
> de_DE.UTF-8 UTF-8
> # locale-gen
>  * Generating 4 locales (this might take a while) with 1 jobs
>  *  (1/4) Generating de_DE.ISO-8859-1 ...                                 [ 
> ok ]
>  *  (2/4) Generating de_DE.UTF-8 ...                                      [ 
> ok ]
>  *  (3/4) Generating en_GB.ISO-8859-1 ...                                 [ 
> ok ]
>  *  (4/4) Generating en_GB.UTF-8 ...                                      [ 
> ok ]
>  * Generation complete
> # env-update && source /etc/profile
>>>> Regenerating /etc/ld.so.cache...   
> 
> Step 2. I added the "setkbmap de" command to the end of /etc/gdm/Init/Default 
> (I'm not sure this is necessary):
> 
> Code: 
> # tail /etc/gdm/Init/Default
>       elif [ -n "$XKBTYPES" -a -n "$XKBCOMPAT" -a -n "$XKBSYMBOLS" ]; then
>         $SETXKBMAP -types "$XKBTYPES" -compat "$XKBCOMPAT" -symbols 
> "$XKBSYMBOLS"
>       elif [ -n "$XKBSYMBOLS" ]; then
>         $SETXKBMAP -symbols "$XKBSYMBOLS"
>       fi
>     fi
>   fi
> fi
> setkbmap de
> exit 0        
> 
> 
> Step 3. I used 'Applications' > 'System Tools' > 'Settings' > 'Region & 
> Language' and added the German keyboard under 'Input Sources', and moved 
> 'German' to the top of the list of input sources. It appears to me that it is 
> necessary to move German to the top of the list if you want the German 
> keyboard layout to be the default in GDM.
> 
> Step 4. On the panel at the top of the screen, I selected the German keyboard 
> layout, then I logged out.
> 
> Step 5. At the top of the GDM greeter screen, I selected the German keyboard 
> layout.
> 
> Step 6. At the top of the GDM greeter screen, I then clicked on the Shutdown 
> icon and shutdown the machine.
> 
> Step 7. I then booted the machine and the GDM greeter screen now shows German 
> (de) as the default keyboard layout instead of English. I can logout, login, 
> reboot and shutdown, and the keyboard layout on the GDM greeter screen now 
> remains as German. (It took quite a bit of tinkering to get it to work in 
> GNOME 3, which has put me off GNOME 3 even more! ;-) )
> 
> EDIT: Yep, just proved it to myself: Step 2 is not necessary. The essential 
> step to get German (or any other keyboard layout) to be the default layout on 
> the GDM greeter screen is that it must be at the top of the list of input 
> sources (Step 3).
> _________________
> Clevo W230SS: amd64 OpenRC elogind nvidia-drivers & xf86-video-intel.
> Compal NBLB2: ~amd64 OpenRC elogind xf86-video-ati. Dual boot Win 7 Pro 
> 64-bit.
> KDE on both.Your problem piqued my curiosity, so I have just now installed 
> the GNOME 3 edition of Sabayon Linux (a binary derivative of Gentoo with its 
> own overlay) in a virtual machine. I opted to use Sabayon Linux to 
> investigate your problem because it is quick to install and similar to 
> Gentoo. Sabayon Linux uses systemd rather than OpenRC, but I found that, even 
> with systemd, GNOME 3 in Sabayon Linux exhibits the same problem you are 
> experiencing. So I don't think the problem is specific to dantrell's OpenRC 
> edition of GNOME 3; I think it is a general problem with GNOME 3.
> 
> Anyway, I did get GDM to use the German keyboard by default in the end, but 
> it took a bit of messing around to get it to work:
> 
> Step 1. I did the usual set up of the German locale that has already been 
> discussed:
> 
> Code: 
> # cat /etc/locale.gen
> en_GB ISO-8859-1
> en_GB.UTF-8 UTF-8
> de_DE ISO-8859-1
> de_DE.UTF-8 UTF-8
> # locale-gen
>  * Generating 4 locales (this might take a while) with 1 jobs
>  *  (1/4) Generating de_DE.ISO-8859-1 ...                                 [ 
> ok ]
>  *  (2/4) Generating de_DE.UTF-8 ...                                      [ 
> ok ]
>  *  (3/4) Generating en_GB.ISO-8859-1 ...                                 [ 
> ok ]
>  *  (4/4) Generating en_GB.UTF-8 ...                                      [ 
> ok ]
>  * Generation complete
> # env-update && source /etc/profile
>>>> Regenerating /etc/ld.so.cache...   
> 
> Step 2. I added the "setkbmap de" command to the end of /etc/gdm/Init/Default 
> (I'm not sure this is necessary):
> 
> Code: 
> # tail /etc/gdm/Init/Default
>       elif [ -n "$XKBTYPES" -a -n "$XKBCOMPAT" -a -n "$XKBSYMBOLS" ]; then
>         $SETXKBMAP -types "$XKBTYPES" -compat "$XKBCOMPAT" -symbols 
> "$XKBSYMBOLS"
>       elif [ -n "$XKBSYMBOLS" ]; then
>         $SETXKBMAP -symbols "$XKBSYMBOLS"
>       fi
>     fi
>   fi
> fi
> setkbmap de
> exit 0        
> 
> 
> Step 3. I used 'Applications' > 'System Tools' > 'Settings' > 'Region & 
> Language' and added the German keyboard under 'Input Sources', and moved 
> 'German' to the top of the list of input sources. It appears to me that it is 
> necessary to move German to the top of the list if you want the German 
> keyboard layout to be the default in GDM.
> 
> Step 4. On the panel at the top of the screen, I selected the German keyboard 
> layout, then I logged out.
> 
> Step 5. At the top of the GDM greeter screen, I selected the German keyboard 
> layout.
> 
> Step 6. At the top of the GDM greeter screen, I then clicked on the Shutdown 
> icon and shutdown the machine.
> 
> Step 7. I then booted the machine and the GDM greeter screen now shows German 
> (de) as the default keyboard layout instead of English. I can logout, login, 
> reboot and shutdown, and the keyboard layout on the GDM greeter screen now 
> remains as German. (It took quite a bit of tinkering to get it to work in 
> GNOME 3, which has put me off GNOME 3 even more! ;-) )
> 
> EDIT: Yep, just proved it to myself: Step 2 is not necessary. The essential 
> step to get German (or any other keyboard layout) to be the default layout on 
> the GDM greeter screen is that it must be at the top of the list of input 
> sources (Step 3).
> _________________
> Clevo W230SS: amd64 OpenRC elogind nvidia-drivers & xf86-video-intel.
> Compal NBLB2: ~amd64 OpenRC elogind xf86-video-ati. Dual boot Win 7 Pro 
> 64-bit.
> KDE on both.
> 
> 
> The full thread is available at:
> 
> https://forums.gentoo.org/viewtopic-t-1066664.html
> 

I feel stupid, but none of the solutions proposed in those threads seem to 
work...

And even the documentation is not accurate: they say that a keyboard layout
button should appear in gdm when there are more than one user, but I see none,
even after creating a second user!

Pierre
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to