You are not logged in.

#1 2011-02-05 18:04:46

chris_debian
Member
From: Wiltshire, UK
Registered: 2009-02-24
Posts: 284

X Keyboard Mapping Won't Change, any ideas?

Hi, all!

I'm happy to have got X running on my new installation, but am unable to change the keyboard layout to "gb" so that I can get UK English.

I followed the wiki, and can't see where I went wrong.

Could someone have a quick check of my xorg.conf and see whether it is something obvious?

Many thanks,

Chris

cat /etc/X11/xorg.conf
Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 0 0
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
    ModulePath   "/usr/lib/xorg/modules"
    FontPath     "/usr/share/fonts/misc/"
    FontPath     "/usr/share/fonts/TTF/"
    FontPath     "/usr/share/fonts/OTF/"
    FontPath     "/usr/share/fonts/Type1/"
    FontPath     "/usr/share/fonts/100dpi/"
    FontPath     "/usr/share/fonts/75dpi/"
EndSection

Section "Module"
    Load  "dri2"
    Load  "extmod"
    Load  "dbe"
    Load  "record"
    Load  "glx"
    Load  "dri"
EndSection

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
        Option      "XkbLayout" "gb"
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/input/mice"
    Option        "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
    #DisplaySize      400   300    # mm
    Identifier   "Monitor0"
    VendorName   "SUN"
    ModelName    "GDM-5410"
    HorizSync    30.0 - 121.0
    VertRefresh  48.0 - 160.0
    Option        "DPMS"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "NoAccel"                # [<bool>]
        #Option     "SWcursor"               # [<bool>]
        #Option     "Dac6Bit"                # [<bool>]
        #Option     "Dac8Bit"                # [<bool>]
        #Option     "BusType"                # [<str>]
        #Option     "CPPIOMode"              # [<bool>]
        #Option     "CPusecTimeout"          # <i>
        #Option     "AGPMode"                # <i>
        #Option     "AGPFastWrite"           # [<bool>]
        #Option     "AGPSize"                # <i>
        #Option     "GARTSize"               # <i>
        #Option     "RingSize"               # <i>
        #Option     "BufferSize"             # <i>
        #Option     "EnableDepthMoves"       # [<bool>]
        #Option     "EnablePageFlip"         # [<bool>]
        #Option     "NoBackBuffer"           # [<bool>]
        #Option     "DMAForXv"               # [<bool>]
        #Option     "FBTexPercent"           # <i>
        #Option     "DepthBits"              # <i>
        #Option     "PCIAPERSize"            # <i>
        #Option     "AccelDFS"               # [<bool>]
        #Option     "IgnoreEDID"             # [<bool>]
        #Option     "CustomEDID"             # [<str>]
        #Option     "DisplayPriority"        # [<str>]
        #Option     "PanelSize"              # [<str>]
        #Option     "ForceMinDotClock"       # <freq>
        #Option     "ColorTiling"            # [<bool>]
        #Option     "VideoKey"               # <i>
        #Option     "RageTheatreCrystal"     # <i>
        #Option     "RageTheatreTunerPort"     # <i>
        #Option     "RageTheatreCompositePort"     # <i>
        #Option     "RageTheatreSVideoPort"     # <i>
        #Option     "TunerType"              # <i>
        #Option     "RageTheatreMicrocPath"     # <str>
        #Option     "RageTheatreMicrocType"     # <str>
        #Option     "ScalerWidth"            # <i>
        #Option     "RenderAccel"            # [<bool>]
        #Option     "SubPixelOrder"          # [<str>]
        #Option     "ClockGating"            # [<bool>]
        #Option     "VGAAccess"              # [<bool>]
        #Option     "ReverseDDC"             # [<bool>]
        #Option     "LVDSProbePLL"           # [<bool>]
        #Option     "AccelMethod"            # <str>
        #Option     "DRI"                    # [<bool>]
        #Option     "ConnectorTable"         # <str>
        #Option     "DefaultConnectorTable"     # [<bool>]
        #Option     "DefaultTMDSPLL"         # [<bool>]
        #Option     "TVDACLoadDetect"        # [<bool>]
        #Option     "ForceTVOut"             # [<bool>]
        #Option     "TVStandard"             # <str>
        #Option     "IgnoreLidStatus"        # [<bool>]
        #Option     "DefaultTVDACAdj"        # [<bool>]
        #Option     "Int10"                  # [<bool>]
        #Option     "EXAVSync"               # [<bool>]
        #Option     "ATOMTVOut"              # [<bool>]
        #Option     "R4xxATOM"               # [<bool>]
        #Option     "ForceLowPowerMode"      # [<bool>]
        #Option     "DynamicPM"              # [<bool>]
        #Option     "NewPLL"                 # [<bool>]
        #Option     "ZaphodHeads"            # <str>
    Identifier  "Card0"
    Driver      "radeon"
    BusID       "PCI:1:0:0"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Card0"
    Monitor    "Monitor0"
    SubSection "Display"
        Viewport   0 0
        Depth     1
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     4
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     8
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     15
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     16
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

Reasons why you may want to try GNU/Linux:

www.whylinuxisbetter.net/

Offline

#2 2011-02-05 18:18:04

chris_debian
Member
From: Wiltshire, UK
Registered: 2009-02-24
Posts: 284

Re: X Keyboard Mapping Won't Change, any ideas?

I've just found a setting in Xfce that fixes this, but I'd like to apply this 'system wide'. The layout is:

United Kingdom   Extended - Winkeys

Does this help at all?

Thank you,

Chris.


Reasons why you may want to try GNU/Linux:

www.whylinuxisbetter.net/

Offline

#3 2011-03-16 09:47:04

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

Hi all!

First of all, as this is my first post, hi everyone and glad to be here with my first arch linux install (been using ubuntu since 4+ years). I am really eager to learn!

This problem happens to me also, I strictly followed the wiki on how to install and my xorg.conf is really similar to yours but instead of (sorry can't copy file contents as I'm at work)

Option      "XkbLayout" "gb"

I have

Option      "XkbLayout" "es".

It is not working at all. If I set the layout through the gui, it gets set back to "us" when rebooting. I have tried to change the layout through setxkbmap and it works, I can set it to be execute when booting, but it is ugly and it should be done in a better way (plus if you change users or lock your computer, it reverts to "us" again).

I have also noticed that changing the local time setting is also reverted when booting. (I set GTM+1 from the beginning but I had to adjust -1h due to these stupid winter/summer changes). It looks like the problems could be interrelated as both changes are ignored at boot/log time.

Anyone knows how to solve it? Thanks in advance!

Edit: Found info on https://bbs.archlinux.org/viewtopic.php … 80#p890080

The file you can add to /etc/X11/xorg.conf.d is something like this:
20-keyboard_layout.conf:

Section "InputClass"
    Identifier         "Keyboard Defaults"
    MatchIsKeyboard    "yes"
    Option             "XkbLayout" "pt"
    Option             "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

Try if it helps you to set it there, I will try when I get home but I would swear I tried that yesterday with "es". No info on how to set the clock yet hmm

Last edited by Darkzom (2011-03-16 10:16:24)

Offline

#4 2011-03-16 10:23:27

Mektub
Member
From: Lisbon /Portugal
Registered: 2008-01-02
Posts: 647

Re: X Keyboard Mapping Won't Change, any ideas?

In

/etc/X11/xorg.conf.d/10-evdev.conf

(not xorg.conf) I have:

Section "InputClass"
        Identifier "evdev keyboard catchall"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option "Xkb_Layout" "pt"
EndSection

What surely works is to put:

setxkbmap pt  (or gb, es, whatever)

in a WM startup file.

Mektub


Follow me on twitter: https://twitter.com/johnbina

Offline

#5 2011-03-16 10:39:53

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

I am missing for sure that underscore you have:

Option "Xkb_Layout" "pt"

I thought it was "XbkLayout" O.o

Will try this afternoon. Does this work for you chris?

Regards,

Offline

#6 2011-03-16 13:38:33

chris_debian
Member
From: Wiltshire, UK
Registered: 2009-02-24
Posts: 284

Re: X Keyboard Mapping Won't Change, any ideas?

Darkzom wrote:

I am missing for sure that underscore you have:

Option "Xkb_Layout" "pt"

I thought it was "XbkLayout" O.o

Will try this afternoon. Does this work for you chris?

Regards,

I'm afraid I've done a fresh install of something else since then and don't have access to an xorg.conf any more. When I search on-line though, all sample xorg.conf files seem to exclude the underscore.

Sorry!

Chris.

Last edited by chris_debian (2011-03-16 13:40:56)


Reasons why you may want to try GNU/Linux:

www.whylinuxisbetter.net/

Offline

#7 2011-03-16 15:45:20

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

Just accessed via ssh from work tongue

This is what I have in /etc/X11/xorg.conf.d/10-evdev.conf

Section "InputClass"
        Identifier "evdev keyboard catchall"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option "XkbLayout" "es"
EndSection

This is from /etc/X11/xorg.conf

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option         "XkbLayout"  "es"
EndSection

This may give a hit of why it is not working... I have checked the wiki (https://wiki.archlinux.org/index.php/Xo … d_settings) and found this:

Note that this is in an InputClass Section and not the InputDevice section for the keyboard.

Changed my xorg.conf to "InputClass" and will see what happens this afternoon. My xorg.conf was generated when I installed the nvidia drivers, so they may have slightly outdated config.

Will let you know wink

Offline

#8 2011-03-16 23:56:01

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

Section "InputClass"
        Identifier "evdev keyboard catchall"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
    Option "XkbLayout" "es"
EndSection

Not working, still the same.

Do anyone has more ideas please?

Offline

#9 2011-03-17 00:31:12

s1n1st3r
Member
From: Rio de Janeiro, Brazil
Registered: 2011-03-15
Posts: 19

Re: X Keyboard Mapping Won't Change, any ideas?

Darkzom, i have installed arch here last weekend. After install gnome and boot from gdm, found my keyboard messed up, as i expected. I've solved the problem using this:

Alt+F2 > setxkbmap -model abnt2 br

(abnt2 br)'s cause i'm brazilian as it seems big_smile.

After doing so i included the command in "start session" to load at boot. I'll look more about it cuz i guess i already saw some post talking about how to solve this.


(brazilian, so my english isn't that good. sry)

edit: Found it

another way to configure keyboard is configuring a file using:

# sudo nano /etc/hal/fdi/policy/10-keymap.fdi

after configs. the file should looks like this:


__________________________________________________________________________________________________________

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keymap">
      <append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
    </match>

    <match key="info.capabilities" contains="input.keys">
      <merge key="input.xkb.rules" type="string">base</merge>

      <!-- If we're using Linux, we use evdev by default (falling back to
           keyboard otherwise). -->
      <merge key="input.xkb.model" type="string">keyboard</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.xkb.model" type="string">evdev</merge>
      </match>

      <merge key="input.xkb.layout" type="string">br</merge>
      <merge key="input.xkb.variant" type="string">abnt2</merge>
    </match>
  </device>
</deviceinfo>

_______________________________________________________________________________________________________________

change the "abnt2" and "br" for what you need.

don't know if it works properly, but you can give it a try;

Last edited by s1n1st3r (2011-03-17 00:42:15)

Offline

#10 2011-03-17 01:13:34

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

Thanks for your help s1n1st3r ! Seems I just solved it in another way (you can try it too as it looks nice)

First check the following files:

/etc/locale.gen (uncomment only the ones you will want to use, in my case it was es_ES.UTF-8)

open a terminal and exec (I had to run it with sudo)

locale-gen

You will see that correct locales were generated from what you changed in locale.gen

/etc/rc.conf (Set LOCALE and KEYMAP accordingly, in my case LOCALE is set to es_ES.UTF-8 and KEYMAY to es)
/etc/profile.d/locale.sh (set the same as you put in before, in my case es_ES.UTF-8)

reboot

For me, it worked flawlessly. Seems I did not set up everything as it should be when installing. What troubles me a little is that when I exec the command

locale

It states the wrong codes again:

[zom@myhost ~]$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.utf8
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=

Anyway seems to work and looks like an almost good way to set it properly (although the last bit of executing locale and seeing all wrong data is strange, but works, could anyone explain why this happens?)

Best regards wink

Offline

#11 2011-03-18 00:57:22

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

Hmmm, seems it did not fix it, although I made a pair of reboots that loged directly to Esp setting.

[zom@myhost ~]$ locale -a
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_COLLATE to default locale: No such file or directory
C
POSIX
es_ES.utf8

and I can not even start compiz configs...

[zom@myhost ~]$ ccsm 

(process:2378): Gtk-WARNING **: Locale not supported by C library.
    Using the fallback 'C' locale.
Info: No sexy-python package found, don't worry it's optional.
Traceback (most recent call last):
  File "/usr/bin/ccsm", line 100, in <module>
    import ccm
  File "/usr/lib/python2.7/site-packages/ccm/__init__.py", line 1, in <module>
    from ccm.Conflicts import *
  File "/usr/lib/python2.7/site-packages/ccm/Conflicts.py", line 27, in <module>
    from ccm.Constants import *
  File "/usr/lib/python2.7/site-packages/ccm/Constants.py", line 88, in <module>
    locale.setlocale(locale.LC_ALL, "")
  File "/usr/lib/python2.7/locale.py", line 531, in setlocale
    return _setlocale(category, locale)
locale.Error: unsupported locale setting

Need some help sad

Edit: If I run

 export LC_ALL="es_ES.utf-8"

then locale -a output gets fixed and can start ccsm. Where should I serach for the conflic? I really ran out of ideas...

Thx smile

edit2:

Found the following at /etc/rc.d/functions

# sanitize the locale settins
unset LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY \
      LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE \
      LC_MEASUREMENT LC_IDENTIFICATION LC_ALL
if [[ $DAEMON_LOCALE =~ yes|YES && -n $LOCALE ]]; then
    export LANG="${LOCALE}"
else
    export LANG=C
fi

I am not a programmer, but I think I understand that it cleans every locale (this is why even if you modify it, it cleans after reboot...), then searches for the locale daemon, if it finds it, asks it to tell the locale settings and puts it on $LOCALE variable, and then sets it as LANG. If it can not find the daemon, it sets the lang to C, which I assume is the default en setting.

someone can decipher more?

Edit3:

Found something in /etc/rc.sysinit

# Flush old locale settings
: >| /etc/profile.d/locale.sh
/bin/chmod 755 /etc/profile.d/locale.sh
# Set user defined locale
[[ $LOCALE ]] || LOCALE="en_US"
stat_busy "Setting Locale: $LOCALE"
echo "export LANG=$LOCALE" >>/etc/profile.d/locale.sh
stat_done

Will try to change that setting. After manually exporting LC_ALL, seems it is working again fine. I suppose I have left something behind that once it gets updated, mixes settings again...

Last edited by Darkzom (2011-03-18 09:23:20)

Offline

#12 2011-03-22 08:48:57

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

It works when computer starts up, however it is set back to US randomly while doing standard work.

Anyone knows where should I search? There must be some config file that keeps mixing settings hmm

Offline

#13 2011-03-22 09:15:46

ChoK
Member
From: France
Registered: 2008-10-01
Posts: 346

Re: X Keyboard Mapping Won't Change, any ideas?

Check in Gnome/KDE/XFCE if you have set keyboard options. Also quoted from your post


Darkzom wrote:

Just accessed via ssh from work tongue

This is what I have in /etc/X11/xorg.conf.d/10-evdev.conf

Section "InputClass"
        Identifier "evdev keyboard catchall"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Driver "[b]evdev[/b]"
        Option "XkbLayout" "es"
EndSection

This is from /etc/X11/xorg.conf

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "[b]kbd[/b]"
    Option         "XkbLayout"  "es"
EndSection

This may give a hit of why it is not working... I have checked the wiki (https://wiki.archlinux.org/index.php/Xo … d_settings) and found this:

Note that this is in an InputClass Section and not the InputDevice section for the keyboard.

Changed my xorg.conf to "InputClass" and will see what happens this afternoon. My xorg.conf was generated when I installed the nvidia drivers, so they may have slightly outdated config.

Will let you know wink

Evdev is the recommended way to configure all input devices. As such, you can remove the InputDevice Section from your xorg.conf (and if you have a mouse and a touchpad section, they usually can be removed too)


Ah, good taste! What a dreadful thing! Taste is the enemy of creativeness.
Picasso
Perfection is reached, not when there is no longer anything to add, but when there is no longer anything to take away.
Saint Exupéry

Offline

#14 2011-03-22 10:30:12

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

Thanks ChoK! I have removed all InputDevices from xorg.conf and will see what happens, with some luck it stops changing randomly.

What you said about checking Gnome keyboard options... I found that I have two keymap settings in gnome (USA and Spain) and no matter how I delete USA setting completely and leave only Spain setting, as after rebooting there are two settings again hmm

Maybe Gnome config is altering this settings and not saving any changes. How could I set this fixedly?

Thank you very much!

(On a sidenote, it happens the same with the clock settings, it is 1 hour away from my actual settings and no matter how many times I do set it, it also changes randomly. Changed time setting to localsetting in rc.conf but I am starting to think that it may be gnome itself the one who's causing problems with keyboard and time)

Suggestions will be really appreciated! I am really liking Arch and I am trying hard to make it my default OS.

Offline

#15 2011-03-22 11:23:30

ChoK
Member
From: France
Registered: 2008-10-01
Posts: 346

Re: X Keyboard Mapping Won't Change, any ideas?

according to this thread (very old though). The culprit is GDM. https://bbs.archlinux.org/viewtopic.php?pid=674463


Ah, good taste! What a dreadful thing! Taste is the enemy of creativeness.
Picasso
Perfection is reached, not when there is no longer anything to add, but when there is no longer anything to take away.
Saint Exupéry

Offline

#16 2011-03-22 11:40:50

Darkzom
Member
Registered: 2011-03-15
Posts: 28

Re: X Keyboard Mapping Won't Change, any ideas?

Thank you very much ChoK!! After searching found this

https://wiki.archlinux.org/index.php/GD … S-keyboard

[Desktop]
Language=de_DE.UTF-8   # change to your default lang
Layout=de   nodeadkeys # change to your keyboard layout

Looks like this is the final answer!!! I was about to turn mad by trying all sort of things. Will post confirmation after some testing this night, but makes sense. Thanks for pointing me to the correct direction!

Edit: PERFECT! Everything is fine now and I do not even see USA settings on the keyboard anymore. Thank you very much for the help!

Maybe I could help putting this information in the wiki page "Beginners Guide", as I followed exactly all the steps but had this problem. I do not know if this is possible.

Best regards,

Last edited by Darkzom (2011-03-23 10:33:31)

Offline

#17 2011-03-25 17:32:00

ChoK
Member
From: France
Registered: 2008-10-01
Posts: 346

Re: X Keyboard Mapping Won't Change, any ideas?

I'm pretty sure you need to be a trusted wiki editor to be able to modify the beginner's guide. If there is a page about keyboard configuration (maybe the Xorg page, or the gnome page if it doesn't happen when you use GDM + KDE), it would be just as visible in there.


Ah, good taste! What a dreadful thing! Taste is the enemy of creativeness.
Picasso
Perfection is reached, not when there is no longer anything to add, but when there is no longer anything to take away.
Saint Exupéry

Offline

Board footer

Powered by FluxBB