2011年11月22日 星期二

apport-bug 某個「癥狀」

apport-bug後面也可以接目前bug的「癥狀」(symptom),例如我要收集對解audio問題有用的apport log,可以用下列指令:
apport-bug audio --save=audio.apport
會出現視窗,問你幾個和這個bug相關的問題。
這些symptom被包含在apport-symptoms套件中,目前只有「audio」、「storage」、「display」、「storage」四種。

2011年11月17日 星期四

將apport的資料存下來

apport是Ubuntu中一套用來回報除錯資訊的軟體,一般的用法是後面直接接launchpad的bug number即可:
apport-collect 888888

這樣就會自動把一些有用的debug資訊送到launchpad上。

但是有個限制是你必須是原始的bug回報者才能回報這些debug資訊。

如果想將debug log貼到別人回報的bug上,可以把apport log存下來,再手動的處理:

apport-bug linux --save=./apport.log

解開的指令:
  mkdir mylog; apport-unpack ./apport.log mylog

之後可自行將有用的log貼在launchpad上,或是直接整個tar之後貼上。

2011年11月8日 星期二

UDS-P 第一天 (Plenary)



* Introduction and Keynote [影片]

- developer.ubuntu.com: Ubuntu的軟體市集
- 剛釋出的Ubuntu One Windows版吸引了25000個從未使用過Ubuntu的新使用者
- lightDM
- Unity Lens: 整合了banshee和ubuntu one
- 新的monospace字型
- openstack, Rackspace。 HP開始使用Ubuntu with Openstack。
- ARM已經點燃戰火,入侵傳統PC的世界。
- ARM on server. 64Bit.
- Vodafone ARM筆電
- 5年LTS支援。在目前Ubuntu中支援的硬體(hardware enablement, certification),也應該在LTS版中支援。
- Dell, Lenovo, Acer, Asus等OEM都有出預安裝的Ubuntu機器
- Juju/charm: language to cloud services
- 重度使用者:Ubuntu除了簡化使用性之外,也該吸引重度使用者
- power management
- 14.04LTS: 未來兩年的趨勢,Ubuntu手機, Tablet和電視版
- Unity,這些大螢幕、小螢幕的設備都能有個統一桌面環境

Ubuntu 12.04開發者大會 (UDS)

Ubuntu 11.10 (Oneiric Ocelet、夢幻的豹貓)才釋出不久,Ubuntu社群和Canonical員工又趕忙開始下一版的開發大會(Ubuntu Developer Summit, UDS)。

Ubuntu 12.04命名為Precise Pangolin(精密的穿山甲)。為長期支援的發行版(LTS),支援期為五年。

這次的地點和一年前的UDS-N一樣都在佛羅里達Orlando的Caribe Rayale飯店。

UDS是有點像個大雜儈的活動,Ubuntu各個team會各自有自己的討論場次(session)。同一個時段的總容量是24個tracks(將Linaro Connect也列入)。

每個session都有live audio streaming,遠端的參加者可以透過freenode的IRC頻道發問。有些重要的場次會有live video streaming。

之後這些bluesprint都再被再整理成詳細的work item,被列入下一版的實作。

開始吧!let's rock!

2011年2月24日 星期四

開關touchpad的熱鍵在udev中已經標準化


commit a1ca5f60e0770299c5c5f21bd371f5823802412b
Author: Bastien Nocera
Date: Thu Nov 4 23:58:56 2010 +0000

extras/keymap: Make touchpad buttons consistent

We'll need to standardise on the Touchpad related keys in udev, kernel, and
X.org. I selected F21 for XF86TouchpadToggle, F22 for XF86TouchpadOn and F23
for XF86TouchpadOff.

See:
https://bugs.freedesktop.org/show_bug.cgi?id=31333

Signed-off-by: Martin Pitt


參考 Touchpad toggle mess

Bug 31333 - Standardise Touchpad toggling keys

2010年11月9日 星期二

Ubuntu和mainline kernel的版號關係

Ubuntu kernel會自己maintain ABI number,ABI number會被加入kernel meta-package的版號的一部份,也會用來作為kernel image的package name的一部份。這部份比較複雜,可能要專文討論。

如果只是想查詢Ubuntu kernel某個版號和mainline kernel的對應關係,請見:

http://kernel.ubuntu.com/~kernel-ppa/info/kernel-version-map.html

2010年10月13日 星期三

Ubuntu切換外接video的hotkey作法

首先evdev driver必須從kernel input event得到正確的keycode,在/usr/include/linux/input.h定義為:
#define KEY_SWITCHVIDEOMODE     227


然後在xkb-data套件中定義了kernel keycode到X keycode的mapping:在/usr/share/X11/xkb/keycodes/evdev裡:
<I235> = 235;   // #define KEY_SWITCHVIDEOMODE     227


在/usr/share/X11/xkb/symbols/inet裡:
key <I235>   {      [ XF86Display           ]       };


於是當切換外接video的hotkey按下後,也就是scancode產生時,kernel input event會產生出值為227的keycode,evdev讀到之後,Xserver再依據xkbdata的設定轉換為XF86Display。

接下來gnome-settings-daemon會filter這個X key,如gnome-settings-daemon-2.32.0/plugins/xrandr/gsd-xrandr-manager.c:

if (xev->xany.type == KeyPress) {
if (xev->xkey.keycode == manager->priv->switch_video_mode_keycode)
handle_fn_f7 (manager, xev->xkey.time);
else if (xev->xkey.keycode == manager->priv->rotate_windows_keycode)
handle_rotate_windows (manager, xev->xkey.time);


g-s-d每收到一個XF86Display key時,會呼叫gnome-rr-* 相關的函式(請見libgnomeui/gnome-rr.h),透過RandR API切換螢幕顯示的設定,便會切換到如外接投影機等顯示設備。

參考:http://live.gnome.org/RandR