# $Id$ PNAME="xkeyboard-config" PVER="2.1" PBUILD="r1" PCATEGORIE="x11-misc" STATE="unstable" DESCRIPTION="X Keyboard Configuration Database." HOMEPAGE="http://www.freedesktop.org/wiki/Software/XKeyboardConfig" DEPEND=">= x11-apps/xkbcomp-1" SDEPEND=">= dev-perl/xml-parser-2.36 >= dev-util/intltool-0.40" # files needed to compile a german pc105 keymap: # niro@frost $ setxkbmap -v -v -v -v -v -model pc105 -print # Setting verbose level to 8 # Setting verbose level to 9 # Setting verbose level to 10 # locale is C # Warning! Multiple definitions of keyboard model # Using command line, ignoring X server # Applied rules from xorg: # model: pc105 # layout: de # Trying to build keymap using the following components: # keycodes: xfree86+aliases(qwertz) # types: complete # compat: complete # symbols: pc+de # geometry: pc(pc105) # xkb_keymap { # xkb_keycodes { include "xfree86+aliases(qwertz)" }; # xkb_types { include "complete" }; # xkb_compat { include "complete" }; # xkb_symbols { include "pc+de" }; # xkb_geometry { include "pc(pc105)" }; # }; # complete include mapping: # keycodes/xfree86 # keycodes/aliases # # types/complete # -> types/mousekeys # -> types/pc # -> types/iso9995 # -> types/level5 # -> types/extra # -> types/numpad # # compat/complete # -> compat/basic # --> compat/ledcaps # --> compar/lednum # -> compat/iso9995 # -> compat/mousekeys # -> compat/accessx # -> compat/misc # --> compat/ledscroll # -> compat/xfree86 # -> compat/level5 # # symbols/pc # -> symbols/keypad # --> symbols/kpdl # -> symbols/altwin # symbols/de # -> symbols/latin # -> symbols/level3 # -> symbols/us # --> symbols/eurosign # --> symbols/group # # rules/xorg # keep only them MCORE_ONLY_KEEP="usr/share/X11/xkb/keycodes.dir usr/share/X11/xkb/keycodes/xfree86 usr/share/X11/xkb/keycodes/aliases" # evdev support MCORE_ONLY_KEEP+=" usr/share/X11/xkb/keycodes/evdev" MCORE_ONLY_KEEP+=" usr/share/X11/xkb/types.dir usr/share/X11/xkb/types/mousekeys usr/share/X11/xkb/types/pc usr/share/X11/xkb/types/iso9995 usr/share/X11/xkb/types/level5 usr/share/X11/xkb/types/extra usr/share/X11/xkb/types/numpad usr/share/X11/xkb/types/default usr/share/X11/xkb/types/complete usr/share/X11/xkb/types/basic" MCORE_ONLY_KEEP+=" usr/share/X11/xkb/compat.dir usr/share/X11/xkb/compat/complete usr/share/X11/xkb/compat/basic usr/share/X11/xkb/compat/ledcaps usr/share/X11/xkb/compat/lednum usr/share/X11/xkb/compat/iso9995 usr/share/X11/xkb/compat/mousekeys usr/share/X11/xkb/compat/accessx usr/share/X11/xkb/compat/misc usr/share/X11/xkb/compat/ledscroll usr/share/X11/xkb/compat/xfree86 usr/share/X11/xkb/compat/level5" MCORE_ONLY_KEEP+=" usr/share/X11/xkb/symbols.dir usr/share/X11/xkb/symbols/pc usr/share/X11/xkb/symbols/keypad usr/share/X11/xkb/symbols/kpdl usr/share/X11/xkb/symbols/altwin usr/share/X11/xkb/symbols/de usr/share/X11/xkb/symbols/latin usr/share/X11/xkb/symbols/level3 usr/share/X11/xkb/symbols/us usr/share/X11/xkb/symbols/eurosign usr/share/X11/xkb/symbols/group" # evdev support MCORE_ONLY_KEEP+=" usr/share/X11/xkb/symbols/inet" MCORE_ONLY_KEEP+=" usr/share/X11/xkb/rules/base usr/share/X11/xkb/rules/base.lst usr/share/X11/xkb/rules/base.xml usr/share/X11/xkb/rules/xorg usr/share/X11/xkb/rules/xorg-it.lst usr/share/X11/xkb/rules/xorg.lst usr/share/X11/xkb/rules/xorg.xml" # evdev support MCORE_ONLY_KEEP+=" usr/share/X11/xkb/rules/evdev usr/share/X11/xkb/rules/evdev.lst usr/share/X11/xkb/rules/evdev.xml" MCORE_ONLY_KEEP+=" usr/share/X11/xkb/geometry.dir usr/share/X11/xkb/geometry/pc" sminclude xorg mtools mcore-split UP2SUBDIR="data/xkeyboard-config" UP2DATE="updatecmd_xorg ${PNAME}" src_compile() { cd ${SRCDIR} mconfigure \ --with-xkb-base=/usr/share/X11/xkb \ --enable-compat-rules \ --disable-xkbcomp-symlink \ --with-xkb-rules-symlink=xorg \ || die mmake || die } preinstall() { if [[ -n $(magequery -n xkbdata) ]] then echo "Please uninstall 'x11-misc/xkbdata' first." die "xkbdata found" fi # remove some stale directories, or things screw up local DIR="${MROOT}/usr/$(mlibdir)/X11/xkb" if [[ -d ${DIR} ]] then echo "Please remove the directory '${DIR}' first." die "'${DIR}' found" fi local PC="${MROOT}/usr/share/X11/xkb/symbols/pc" if [[ -d ${PC} ]] then echo "Please remove the directory '${PC}' first." die "'${PC}' found" fi }