Installing Arch 2007.08-2 on a ThinkPad T43
Contents
Base installation
Follow the Arch Linux official Beginners Guide.
Wireless LAN
As in http://wiki.archlinux.org/index.php/Wireless_Setup, install wireless-tools, check for hardware and install appropriate driver package ipw2200-fw.
I installed Network Manager too. Check http://wiki.archlinux.org/index.php/NetworkManager
Cpu Frequency scaling
Follow official Arch page: http://wiki.archlinux.org/index.php/Cpufrequtils
Suspension/Hibernation
Follow the guide http://wiki.archlinux.org/index.php/Pm-utils just till Advanced configuration; then install laptop-mode-tools (this will fix all brightness problems too).
Touchpad
Follow the guide http://wiki.archlinux.org/index.php/Touchpad_Synaptics
Multimedia and codecs
Thinkpad keys and OSD
If you want to use the OSD capabilities:
- Install the tpb package
sudo pacman -S tpb
- Follow the guide http://wiki.archlinux.org/index.php/Tpb
To handle all thinkpad keys:
- Add ibm_acpi in the MODULES list in your /etc/rc.conf
- Now you can configure the keys in /etc/acpi/handler.sh
This is my /etc/acpi/handler.sh (it handles wifi/bluetooth switch [Alt-F5] and Turn off monitor [Alt-F3] keys):
#!/bin/sh
# Default acpi script that takes an entry for all actions
# NOTE: This is a 2.6-centric script. If you use 2.4.x, you'll have to
# modify it to not use /sys
minspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq`
maxspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq`
setspeed="/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"
set $*
case "$1" in
button/power)
#echo "PowerButton pressed!">/dev/tty5
case "$2" in
PWRF) logger "PowerButton pressed: $2" ;;
*) logger "ACPI action undefined: $2" ;;
esac
;;
button/sleep)
case "$2" in
SLPB) echo -n mem >/sys/power/state ;;
*) logger "ACPI action undefined: $2" ;;
esac
;;
ac_adapter)
case "$2" in
AC)
case "$4" in
00000000)
echo -n $minspeed >$setspeed
#/etc/laptop-mode/laptop-mode start
;;
00000001)
echo -n $maxspeed >$setspeed
#/etc/laptop-mode/laptop-mode stop
;;
esac
;;
*) logger "ACPI action undefined: $2" ;;
esac
;;
battery)
case "$2" in
BAT0)
case "$4" in
00000000) #echo "offline" >/dev/tty5
;;
00000001) #echo "online" >/dev/tty5
;;
esac
;;
CPU0)
;;
*) logger "ACPI action undefined: $2" ;;
esac
;;
button/lid)
#echo "LID switched!">/dev/tty5
;;
ibm/hotkey)
case "$4" in
00001003)
for kk in $(users) ; do
su $kk -c "xset -display :0 dpms force standby"
done
;;
00001005)
cat /proc/acpi/ibm/bluetooth | awk '{ print $2 }' | while read line; do
if [ $line == "enabled" ]; then
echo disable > /proc/acpi/ibm/bluetooth
else
echo enable > /proc/acpi/ibm/bluetooth
fi
break
done
;;
*)
logger "ACPI group/action undefined: $1 / $2"
;;
esac
;;
*)
logger "ACPI group/action undefined: $1 / $2"
;;
esac