# Copyright (c) 2008..2010 - OpenSLX GmbH # # This program is free software distributed under the GPL version 2. # See http://openslx.org/COPYING # # If you have any feedback please consult http://openslx.org/feedback and # send your suggestions, praise, or complaints to feedback@openslx.org # # General information about OpenSLX can be found at http://openslx.org/ # ----------------------------------------------------------------------------- # xserver/OpenSLX/Distro/Suse.pm # - provides SUSE-specific overrides of the Distro API for the xserver # plugin. # ----------------------------------------------------------------------------- package xserver::OpenSLX::Distro::Suse; use strict; use warnings; use base qw(xserver::OpenSLX::Distro::Base); use File::Path; use OpenSLX::Basics; use OpenSLX::Utils; use OpenSLX::DistroUtils; use Data::Dumper; ################################################################################ ### interface methods ################################################################################ sub setupXserverScript { my $self = shift; my $repoPath = shift; my $script = $self->SUPER::setupXserverScript($repoPath); # add stuff to the script generated via Base.pm $script .= unshiftHereDoc(<<' End-of-Here'); # SuSE specific extension to stage3 xserver.sh testmkd /mnt/etc/X11/xorg.conf.d # Add InputClass to proper setup the keyboard and other input echo 'Section "InputClass" Identifier "evdev pointer catchall" MatchIsPointer "on" MatchDevicePath "/dev/input/event*" Driver "evdev" EndSection Section "InputClass" Identifier "evdev keyboard catchall" MatchIsKeyboard "on" MatchDevicePath "/dev/input/event*" Driver "evdev" EndSection Section "InputClass" Identifier "evdev touchpad catchall" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Driver "evdev" EndSection Section "InputClass" Identifier "evdev tablet catchall" MatchIsTablet "on" MatchDevicePath "/dev/input/event*" Driver "evdev" EndSection Section "InputClass" Identifier "evdev touchscreen catchall" MatchIsTouchscreen "on" MatchDevicePath "/dev/input/event*" Driver "evdev" EndSection' >/mnt/etc/X11/xorg.conf.d/10-evdev.conf # Xorg hardware is autodetected, so no module information provided [ -z "${xmodule}" ] && \ sed "/Section \"Device\"/,/EndSection/d" -i ${xfc} testmkd /mnt/var/lib/xkb/compiled testmkd /mnt/var/lib/X11 testmkd /mnt/var/lib/xdm/authdir/authfiles 0700 ln -s /usr/bin/Xorg /mnt/var/lib/X11/X rm /mnt/etc/X11/xdm/SuSEconfig.xdm End-of-Here return $script; } 1;