2010年4月27日 星期二

Solving TPB Package Problem on Ubuntu 9.10

Here is a solution for ThinkPad button display on ubuntu 9.10.
I try on my x60 and it works.

The first thing is installing tpb package on ubuntu, type command:
sudo apt-get install tpb
After installing this package, you can press volume up/down buttons, and you would see a bar displayed on your screen. However, if you reboot ubuntu, tpb doesn't work anymore!

The reason is tpb uses /dev/nvram device which is root privilege only.
You should change its mode for tpb's access. Don't use chmod command, it will be recovered after rebooting. (I can't figure out the reason)

Let's add one rule in /etc/udev/rules.d/ folder.
In this folder, you can check if any rule file (*.rules) describes about nvram, and try to modify it.
If not exist such file, you can copy a rule file from /lib/udev/rules.d/.
I copy 50-udev-default.rules file:
sudo cp /lib/udev/rules.d/50-udev-default.rules /etc/udev/rules.d/
In this file, append a line in #mem part:
KERNEL=="nvram", GROUP="nvram", MODE="0660"
Let nvram in a group named nvram, and use 660 (group read/write) mode.

Next, we should add the user in this group.
sudo adduser <your user> nvram
Restart your ubuntu, your Thinkpad button would work well!

If you want to modify any settings of Thinkpad buttons, try editing this file: /etc/tpbrc

Here are some references:
1. [Linux] ThinkPad 的音量鈕圖示
2. Ubuntu-Linux on IBM Thinkpad X31
3. HOWTO: Ubuntu on IBM Thinkpad T42
(... 閱讀「Solving TPB Package Problem on Ubuntu 9.10」全文)