EDV:Linux auf Laptops/hardy auf IBM X41 Tablet

From KIP Wiki
⧼kip-jumptonavigation⧽⧼kip-jumptosearch⧽

IBM X41 Tablet

ThinkPadX41Tablet.jpg

Standard Features

  • Intel Pentium M (Dothan), L2 2 MB cache
    • 1.2GHz ULV (753)
    • 1.5GHz LV (758)
    • 1.6GHz LV (778)
  • Intel Graphics Media Accelerator 900
    • 12.1" TFT display with 1024x768 resolution
  • 256 or 512MB PC2-4200 memory standard (non-removable)
    • one additional, unpopulated slot for a maximum of 1280 or 1536MB
  • 40 or 60GB Hitachi Travelstar (C4K60 (1.8" drive)) ATA/IDE HDD (Model HTC4260xxG9AT00, where xx stands for the Capacity) producer page
  • AD1981B AC'97 Audio controller
  • Broadcom Gigabit (10/100/1000) Ethernet controller
  • CDC slot with one of the following:
    • IBM Integrated 56K Modem (MDC-2)
    • IBM Integrated Bluetooth IV with 56K Modem (BMDC-3)
  • MiniPCI slot with one of the following:
    • IBM 11a/b/g Wireless LAN Mini PCI Adapter II
    • Intel PRO/Wireless 2200BG Mini-PCI Adapter
    • Intel PRO/Wireless 2915ABG Mini-PCI Adapter
  • IBM Embedded Security Subsystem 2.0
  • IBM Active Protection System
  • SD Card slot with IO support
  • CardBus slot (Type 2)
  • Integrated Fingerprint Reader on select models
  • Wacom Serial Tablet PC Stylus
  • Tablet Hardware Buttons


Einige Links

1. kubuntu hardy installieren

Dazu verwende ich kubuntu-8.04-alternate-i386.iso

Wie immer ist es wichtig danach erst einmal das System zu aktualisieren. In diesem Fall mit 'Adept-Aktualsierer'.

Danach hat sofort funktioniert:

  • SD-Karten-Slot
  • Grafik (erst mal ...)
  • Ethernet-Controller
  • WLAN
  • Sound

etwas Software

Aktiviere backports und partner in /etc/apt/sources.list

aptitude install openssh-server kedit nedit vim-gtk


Grafik

xorg.conf

Hier ist eine funktionierende xorg.conf:

Section "InputDevice"
	Identifier	"Generic Keyboard"
	Driver		"kbd"
	Option		"XkbRules"	"xorg"
	Option		"XkbModel"	"pc105"
	Option		"XkbLayout"	"de"
	Option		"XkbOptions"	"lv3:ralt_switch"
EndSection

Section "InputDevice"
	Identifier	"Configured Mouse"
	Driver		"mouse"
	Option		"CorePointer"
EndSection

Section "InputDevice"
	Identifier	"Synaptics Touchpad"
	Driver		"synaptics"
	Option		"SendCoreEvents"	"true"
	Option		"Device"	"/dev/psaux"
	Option		"Protocol"	"auto-dev"
	Option		"HorizEdgeScroll"	"0"
EndSection

Section "InputDevice"
	Identifier	"stylus"
	Driver		"wacom"
	Option		"Device"	"/dev/ttyS0"
	Option		"Type"	"stylus"
	Option		"ForceDevice"	"ISDV4"
EndSection

Section "InputDevice"
	Driver		"wacom"
	Identifier	"cursor"
	Option		"Device"	"/dev/ttyS0"
	Option		"Type"	"cursor"
	Option		"ForceDevice"	"ISDV4"
	Option		"Mode"	"Absolute"
	Option		"TPCButton"	"on"
EndSection

Section "InputDevice"
	Driver		"wacom"
	Identifier	"eraser"
	Option		"Device"	"/dev/ttyS0"
	Option		"Type"	"eraser"
	Option		"ForceDevice"	"ISDV4"
EndSection


Section "Device"
	Identifier	"Configured Video Device"
	Boardname	"Intel 915"
	Busid		"PCI:0:2:0"
	Driver		"intel"
	Vendorname	"Intel"
	Option		"monitor-TV"	"TV"
	Option		"monitor-VGA"	"VGA"
	Option		"DRI"	"on"
EndSection

Section "Monitor"
	Identifier	"Configured Monitor"
	Vendorname	"Plug 'n' Play"
	Modelname	"Plug 'n' Play"
  modeline  "640x480@60" 25.2 640 656 752 800 480 490 492 525 -vsync -hsync
  modeline  "800x600@56" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
  modeline  "800x600@60" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
  modeline  "1024x768@60" 65.0 1024 1048 1184 1344 768 771 777 806 -vsync -hsync
	Gamma		1.0
	Option		"DPMS"
EndSection

Section "Monitor"
	Identifier	"TV"
	Option		"Ignore"	"true"
EndSection

Section "Monitor"
	Identifier	"VGA"
	Option		"Ignore"	"false"
EndSection

Section "Screen"
	Identifier	"Default Screen"
	Monitor		"Configured Monitor"
	Device		"Configured Video Device"
	Defaultdepth	24
	SubSection "Display"
		Depth	24
		Modes	"1024x768@60" "800x600@60" "800x600@56" "640x480@60"
	EndSubSection
	SubSection "Display"
		Depth	16
		Modes	"1024x768@60" "800x600@60" "800x600@56" "640x480@60"
	EndSubSection
EndSection

Section "ServerLayout"
	Identifier	"Default Layout"
  screen 0 "Default Screen"
#	Inputdevice	"Synaptics Touchpad"
	Inputdevice	"cursor"	"SendCoreEvents"
	Inputdevice	"stylus"	"SendCoreEvents"
	Inputdevice	"eraser"	"SendCoreEvents"
EndSection

Section "Module"
	Load		"glx"
	Load		"GLcore"
	Load		"v4l"
EndSection

Wichtig dabei ist:

  • ein Touchpad hat der X41 nicht, deshalb ist das auskommentiert.
  • Bitte nicht den i810-Treiber verwenden: da funktioniert xrandr nicht und wir haben dann Probleme den externen Beamer/monitor ein- und auszuschalten
  • Die 'cursor' 'eraser' 'stylus' - Einträge sind für den Spezialstift des X41 ...

in /usr/share/apps/kxkb/ubuntu.xmodmap hinzufügen:

keycode 139 = XF86RotateWindows

Damit wird der 'Rotate' Knopf definiert

automatisches Schwenken...

#!/bin/sh
#/etc/acpi/x41tsdown.sh
echo 'Rotating screen...'
if [ "`/usr/bin/xrandr -o right -v | grep -i 'randr' | wc -l`" -ne "1" ]
then
    echo '!! Something went wrong...'
    export DISPLAY=":0.0"
    export XAUTHORITY=/var/lib/gdm/\:0.Xauth
    /bin/xset -display $DISPLAY dpms
    echo 'Trying to rotate again...'
    /usr/bin/xrandr -o right
fi
echo 'Rotating stylus...'
/usr/bin/xsetwacom set stylus rotate 1
echo 'Starting keyboard...'
/usr/bin/xvkbd&
#!/bin/sh
#/etc/acpi/x41tsup.sh
echo 'Unrotating screen...'
if [ "`/usr/bin/xrandr -o normal -v | grep -i 'randr' | wc -l`" -ne "1" ]
then
    echo '!! Something went wrong...'
    export DISPLAY=":0.0"
    export XAUTHORITY=/var/lib/gdm/\:0.Xauth
    /bin/xset -display $DISPLAY dpms
    echo 'Trying to unrotate again...'
    /usr/bin/xrandr -o normal
fi
echo 'Rotating stylus...'
/usr/bin/xsetwacom set stylus rotate 0
echo 'Killing keyboard...'
killall xvkbd

Then run:

sudo chown root.root /etc/acpi/x41tsdown.sh
sudo chmod 755 /etc/acpi/x41tsdown.sh
sudo chown root.root /etc/acpi/x41tsup.sh
sudo chmod 755 /etc/acpi/x41tsup.sh

If you'd like to edit these scripts with your favorite text editor (which, I realize, is most likely ed), it's fairly obvious that they're located in /etc/acpi/ as x41tsdown.sh and x41tsup.sh. These commands make the shell scripts that handle the events... once we register the events. Let's do that now.

sudo cat <<EOF > /etc/acpi/events/x41t-swivel-down
# /etc/acpi/events/x41t-swivel-down
# called when tablet head swivels down
event=ibm/hotkey HKEY 00000080 00005009
action=/etc/acpi/x41tsdown.sh
EOF
sudo cat <<EOF > /etc/acpi/events/x41t-swivel-up
# /etc/acpi/events/x41t-swivel-up
# called when tablet head swivels up
event=ibm/hotkey HKEY 00000080 0000500a
action=/etc/acpi/x41tsup.sh
EOF

Now, awaken your inner ACPI daemon with the following commands:

sudo /etc/init.d/acpid force-reload 
sudo /etc/init.d/acpid restart

And swivel down your LCD to make sure it works.

FingerPrint Sensor

aptitude install thinkfinger-tools libpam-thinkfinger
tf-tool --acquire

Oder auch gleich

tf-tool --acquire /etc/pam_thinkfinger/loginname

um die eingelesenen Abdrücke (bir-Dateien) gleich nach /etc/pam_thinkfinger kopieren zu lassen.

Und in /etc/pam.d/common-auth:

auth	sufficient	pam_thinkfinger.so
auth	requisite	pam_unix.so nullok_secure
#auth	optional	pam_smbpass.so migrate missingok

AFS

Geht genau wie im Wiki beschrieben