2007年12月1日 星期六

Thinkpad X61 Gentoo Linux 安裝筆記

安裝過程一切還好,除了一些特殊鍵需要調整
Fn+F1~F12, Home, End等
安裝acpid還有修改 /etc/acpi/default.sh 然後去分析抓到的 event
ibm/hotkey HKEY 00000080 0000xxxx

有用到工具
  • suspend的s2ram待機
  • acpid for Hotkey
  • xrandr 2.0 for Video switch
  • xbacklight for Brightness control
  • xmodmap for MultiMedia key
  • ndiswrapper for Wireless AR5007EG (可用新的branch/hal-0.10.5.6 or testing就有支援)
  • KNetDockApp for Netflow monitor
  • KNetworkManager for auto-network configuration
  • KPowersave for battery control
  • tp_smapi for hdaps, detail battery info
  • gtk-qt-engine for KDE佈景主題套用到GTK的程式
xorg 設定:
$ X -configure
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "ExplorerPS/2"
Option "Device" "/dev/input/mice"
#The follow setting is used for ThinkPoint
#EmulateWheel: because ThinkPoint has no scrolling function like normal mouse(ZAxis), we need to emulate this.
Option "EmulateWheel" "on"
#EmulateWheelButton: when button(mid) is press, start the wheel emulation.
Option "EmulateWheelButton" "2"
#Mapping mouse XY moving to button 4 5 6 7 (scroll X, scroll Y)
Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
#Mapping normal mouse, which has scroll function(it will generate ZAxis moving event), to button 4 5
Option "ZAxisMapping" "4 5"
EndSection
說明:
在X-Window中,按鍵6 7代表水平的捲軸,4 5代表垂直的捲軸
因此在ThinkPoint中,配合按鍵2的模擬,本來滑鼠的移動就對應成XY軸的捲動
而本來就有滾輪的滑鼠,他在滾動時會產生X-Window中的Z軸動作
因此把這些動作對應到4 5就代表這些事件會由X-Window的垂直捲軸處理
不過X軸的對應會使Firefox變成上一頁/下一頁的效果...因此必須取消Firefox對水平軸的處理要設定mousewheel.horizscroll.withnokey.action=0

Opera在水平滾動時也可能發生「前進」、「後退」等操作,修正方法為: 菜单中:工具->首选项->高级->快捷键->鼠标设置->Opera Standard->编辑


在彈出的窗口中: 
Application->Button6->删除->Button7->删除

確定后,選中Opera Standard(已修改),一路確定即可。


**更新 @ 2008-09-29**
新的 xorg-server => 1.4 支援裝置隨插即用功能 (上面的設定可以省去摟)
他會透過 evdev 驅動向 hal 取得支援輸入的硬體並自動設定,更好的是支援所有按鍵!!
這使得 xorg.conf 的設定可大幅減少,可以省去整個 InputDevice 的設定讓他自己抓
不過會發現 ThinkPoint 的捲軸功能不見了,這是因為直到寫這篇文章的 evdev 版本 2.0.5
都還沒有支援 EmulateWheel 的功能,必須安裝 x11 overlay 中 git 版本才有效 (2008-09-29)
然後設定的部份改到 hal 中,而非 xorg.conf 了 (參考5)
並增加 /etc/hal/fdi/policy/99-x11-mouse.fdi:
(ps.以下為XML檔案,如果看不到請參考網頁,並加入部份的設定)

<?xml version="1.0" encoding="utf-8"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.product" string="TPPS/2 IBM TrackPoint">
      <merge key="input.x11_options.EmulateWheel" type="string">true</merge>
      <merge key="input.x11_options.EmulateWheelButton" type="string">2</merge>
      <merge key="input.x11_options.XAxsisMapping" type="string">6 7</merge>
      <merge key="input.x11_options.YAxisMapping" type="string">4 5</merge>
      <merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>
    </match>
  </device>
</deviceinfo>


多媒體按鍵設定:
編輯 ~/.Xmodmap
keycode 166 = XF86Back
keycode 167 = XF86Forward
keycode 173 = XF86AudioPrev
keycode 174 = XF86AudioStop
keycode 172 = XF86AudioPlay
keycode 171 = XF86AudioNext
keycode 123 = XF86AudioLowerVolume
keycode 122 = XF86AudioRaiseVolume
keycode 233 = XF86MonBrightnessUp
keycode 232 = XF86MonBrightnessDown

按鍵名稱參考: /usr/share/X11/XKeysymDB
keycode 參考 xev 程式所取到的值

ps,好像更新 BIOS 或是驅動還是什麼的會使對應的keycode變更???

螢幕亮度調整:
新版核心中的 thinkpad-acpi 須在載入時附加參數 brightness_enable=1
並且 echo 0xffffffff > /proc/acpi/ibm/hotkey 啟動所有的 hotkey
這樣當按下 Fn+Home/End 調整螢幕亮暗時,變可以產生 keycode 232/233
並對應到 XF86MonBrightnessUp/XF86MonBrightnessDown 然後由 thinkpad-acpi 控制亮度調整
**更新 End @ 2008-09-29**

一些xorg的小提示:
有時候修改/etc/fonts/conf.d時,可以透過以下指令讓接下來開啟的 X apps 套用新設定
xset fp rehash
又如果有手動安裝新字型,需要用 (root) fc-cache -frv 重新更新字型的資料庫

dbus,hal,ntfs-3g:
http://gentoo-wiki.com/HOWTO_D-BUS,_HAL,_KDE_media:/
http://gentoo-wiki.com/HOWTO_NTFS_write_with_ntfs-3g#Adding_.2Fsbin.2Fmount.ntfs_is_more_easier_.28hal-0.5.9.1_or_later.29

compiz-fusion

http://wiki.gentoo-xeffects.org/Compiz_Fusion
安裝好後可以選擇Window Decoration
ps. kde預設session save功能會倒置 compiz 的 Window Manager出問題
因此要到控制中心改每次都開始新的 session 才不會出錯
還有要在CompizConfig Settings Manager的視窗裝飾的命令指定要用的WM
1. kde-window-decorator --replace 可以看到本來kde的主題
2. /usr/bin/emerald --replace 可以用 compiz-fusion 的,比較好看

取消NetworkManager自動改hostname:
# vi /etc/dhcp/dhclient.conf
send host-name "ppc";
supersede host-name "ppc";

還嫌 gentoo 不夠快嗎!?
See this [HOWTO] Flying with gentoo

參考1. http://gentoo-wiki.com/HARDWARE_Lenovo_Thinkpad_T61
參考2. http://yyhh.org/blog/2007/10/thinkpad-x61-hotkeys-solution-debian-linux
參考3. http://wiki.compiz-fusion.org/
參考4. 一些改過的檔案: http://fcu.ppcsite.info/linux
參考5. 新版 xorg 的 evdev 設定 http://gentoo-wiki.com/X11_Mouse/Xorg_7.3
參考6. 配置Trackpoint的中鍵滾輪功能 

2 則留言:

匿名 提到...

可以把你的X61的Gentoo的/etc/make.conf 贴出来吗?我安装时为什么总是黑屏?发邮件吧

zwxie1121@gmail.com

張晁睿 提到...

已經寄給你了
請收信

Related Posts Plugin for WordPress, Blogger...