2009/11/23

Build Chrome OS 遇到的 ttf-mscorefonts-installer 問題

今天有兩個人問我同樣的問題,所以 post 出來讓大家參考。

在 build Chrome OS 的時候,台灣的朋友會遇到安裝 ttf-mscorefonts-installer 會到 sourceforce 下載 corefonts 的字型,而衰的是在台灣通常 sourceforce 會幫你選擇 ncu 的鏡像站,正巧 NCU 下載這個 package 有時候會有問題。

我的解法有點無厘頭…我是自己先切換 mirror 站後,把 corefonts 底下所有的字型檔案都先載下來。接著 ./enter_chroot 進去 build system 後,執行
sudo apt-get install ttf-mscorefonts-installer
等到下載出問題時按 ctrl + z 暫停程序,這時候去看 /tmp 目錄底下會有一個 ttf-mscorefonts-installer-xxx 的目錄。再把剛剛自行下載的字型檔案全部都複製進去這個目錄。然後再下 fg 指令繼續安裝即可。

[update]
補上一個更簡單的方法,在 /etc/hosts 多加下面這行即可
211.79.60.17 ncu.dl.sourceforge.net

2009/10/30

Arch linux + plymouth... 可惜開不了機

今天試著在 Arch Linux 安裝 plymouth-git
不過目前還沒辦法正常開機,想辦法解決中…。

2009/10/25

KaLUG 十週年

這禮拜六是 KaLUG (大高雄 Linux 使用者群組) 十週年的聚會,雖然是十一週年時才慶祝的 XD

這次為了要坐高鐵 65 折的票所以五點多起床六點多就搭高鐵下去了,早早就到了黃大哥家聊天跟準備食物。到了黃大哥家後就享用了黃大哥的咖啡 -- 遠比許多咖啡館的咖啡都要好得多了。

還有拉花唷


2009/10/23

Linux 多點下載

前幾天 tsung 在 blog 上提到了 lftp 多點下載的方式。不過每次都要打指令有點麻煩,其實只要在 .bashrc 裏面加入一個 function 就可以簡化下載方式。(請先裝 lftp)

編輯家目錄的隱藏檔 .bashrc,在最後面加入以下內容:



接下來重新載入設定檔:
source ~/.bashrc
接下來就可以用簡單的指令下載囉,比如說要下載 Ubuntu 9.10 rc,請直接用以下指令:
pget ftp://ftp.twaren.net/ubuntu-cd/9.10/ubuntu-9.10-rc-desktop-i386.iso
這樣就可以多線程下載囉。

2009/10/13

從 Chome 開發網站下載到的 Google Chrome OS?

這算是八卦吧。


solidot 的一篇文章指出 Google Chrome 的開發網站 chromium 目前可以下載到客制化版本的 Google Chrome,網址為:
http://build.chromium.org/buildbot/snapshots/chromium-rel-linux-chromeos/28808/


看檔名感覺起來好像是跟 chrome OS 相關的東西。下載之後執行起來的結果跟一般的 chrome 差不多,不過多了幾個東西。根據以下的不同,我想可以合理的懷疑這是 Google Chome OS 之後會採用的客制化 chrome browser。


首先,左邊多了一個登入 .google.com 的 tab。
screen_chromeos

右上角多了時間
screen_chromeos_date

電池
screen_chromeos_battery

網路
screen_chromeos_network

選項裏面則可以調整 touchpad
Screenshot-Google 瀏覽器 選項

2009/08/28

Sharp 發表 ARM netbook - NetWalker

Sharp 發表 ARM netbook - NetWalker, 採用 Freescale solution, 而且作業系統看起來是 Canonical 的 Ubuntu!

main

規格如下:

仕様一覧 | NetWalker:シャープ

AppCentre 正式命名為 Ubuntu Software Store

也是在 Phoronix 上看到的新聞,不過看起來還不夠優阿…我看要到 10.04 才堪用吧。

詳見新聞:Canonical Unveils The Ubuntu Software Store

Ubuntu 9.10 新開機程序 - xsplash

今天早上起來看到 Ubuntu 新的開機程序 xsplash。我怎麼覺得開機好像又要變慢了 = =



新聞請見 Ubuntu 9.10 Gets A New Splash Screen, Not Plymouth

2009/08/24

Ubuntu 的 App Store -- AppCentre (codename)

剛剛 digg 上看到了這則新聞,去查了一下,Ubuntu wiki 上已經有設計草稿
1.0-available-category
取自 Ubuntu Wiki

上網搜尋一下,有更完整的使用者介面展示:
appcenter
取自 Ubuntu AppStore in the workings?

看起來 9.10 應該會 release, 10.04 會取代 gdebi, software-properties, synaptic, 讚。

2009/08/19

關於 glib signal 的 callback 參數

當你自訂了一個信號時,會需要定義 callback 的參數為何。平常寫 GTK+ 時的 callback function 通常長這樣:
gboolean callback (GtkWidget *widget, GdkEvent *event, gpointer data);
所以我剛開始實作完 signal 之後,我還以為所有 callback 都長這樣 XD,但其實不是的,callback 的參數為何,其實是看 g_signal_new 時傳入的 marshaller 為何。關於 gobject marshaller 的部份可以參考 olv 長輩的《gobject 的 marshaller》。而我是直接使用 glib 給的 marshaller。我用的是 g_cclosure_marshal_VOID__VOID,而查詢 API 手冊後可得知他的 callback 參數為
void (*callback) (gpointer instance, gpointer user_data)
所以調用的的時候傳入這種參數即可,不需要 GdkEvent,因為有 GdkEvent 參數是 gtk 自行定義的 marshaller。

2009/08/14

Ubuntu 9.10 變更 acpi hotkey 存取方式

今天在研究 Ubuntu 9.10 時,發現了 Ubuntu 9.10 對 acpi hotkey 存取的部份使用不同的方式存取。

Screenshot-Hotkeys-Architecture - Ubuntu Wiki - Google 瀏覽器

這樣的架構看起來,以後掛上 hal-addon-acpi 後就可以直接從 hal 獲得 acpi hotkey 的訊息,而不需要像以前一樣存取 /proc/acpi/event 或 acpid 的 socket。另外我想 9.10 之後就會改用 DeviceKit 取代原本的 hal 吧?

參考資料:

2009/08/13

在 GtkEventBox 使用背景圖片

沒想到在網頁程式裏面這麼簡單的事情,在 GTK 上弄還真麻煩 :P

如果想在 GTK 的元件中使用自己的背景圖時,主要的方法有兩種
  1. 用 expose_event 繪製
  2. 至換元件的 style
我自己使用第一個方法時有點詭異,如果在 Container 加入其他元件時,這些子元件都無法正確顯示。所以就用了第2種方法。


參考資料
參考資料都是用 PHP,我是參考他的方法用 C 重新實現

2009/08/12

Google Chrome Browser 整合 window manager title bar...

今天早上,突然發現我的 google chrome browser 的 window title 被整合進去了!

Google Chrome 整合 window title

這個在 Windows 版本上剛開始就有的功能,終於也在 Linux 版本上面提供。這樣在閱讀上省了一些空間 :P

版本是 3.0.197.11。

2009/08/04

GObject 產生器

好久沒 Post 了 XD

今天寫了個 GObject 產生器,後來無聊一查才知道早就有人寫了 囧
真是白費工夫…不過還是丟出來,寫都寫了…。

[使用方式]
./gobjgen

接下來會問 namespace, class name 跟 parent object,格式都統一用 dash "-" 來區分,比如說我想要一個 LazyscriptsController,就在 class name 的地方輸入 lazyscripts-controller。所以如果你要繼承自 GObject,就必須鍵入 g-object。

回答完 namespace, class name & parent object 後,你可以決定需不需要一個 main function 作為測試。全部完成後就會有兩個像 lazyscripts-controller.h, lazyscripts-controller.c 這樣的檔案,如果剛剛有選 main function for test,就可以直接編譯來看看可不可以用。

gcc -g -Wall `pkg-config --libs --cflags glib-2.0 gobject-2.0` example-namespace-lazyscripts-controller.c

理論上應該是可以用的 XD


[源碼]
放在 bitbucket 上,用以下指令下載源碼:

hg clone http://bitbucket.org/yurenju/gobjgen/

[其他相關]

2009/02/17

lazyscripts (Lazybuntu) 開發進度

感謝 hychen 的加入,lazyscripts 又開始繼續開發。現在整個架構都已經大改了,目前底層採用 git 管理。注:不是 lazyscripts 用 git 管理源碼,而是 lazyscripts 底層就用 git 管理 scripts。hychen 畫了張圖來表示新 lazyscripts 架構。


在若干的努力後,現在已經將底層的 Git lazyscripts framework 接上 UI 。雖然還不能使用,不過總算是往前踏一步了 :)


PS. 如果你對 lazyscripts 新架構感到很疑惑是正常的,下次找個時間再解釋新架構囉。

2009/01/24

Droid 字型安裝 deb 包

突然發現 launchpad 上已經有 droid font 的 deb 包了。

請加入此行到你的軟體來源:
deb http://ppa.launchpad.net/fonts/ubuntu intrepid main

並且安裝 ttf-droid 即可
sudo apt-get install ttf-droid

2009/01/17

Open Street Map 編輯地圖

首先你需要 josm,當然 ubuntu 跟 debian 也都有了,請下 apt-get install josm。

打開 josm,通常會在應用程式->教育->josm。進去之後直接開啟你的 _trk.gpx 檔案,會看到以下畫面。


這就是你的路徑了。當然這樣是看不出所以然的。請按下工具列第四個圖示:下載。並且選擇儲存到新的圖層去。


此時 josm 會自動幫你下載軌跡附近的地圖,你大概就可以知道附近的路了。以我的例子來說他會下載復興崗捷運站附近的圖資。


這個時候照片就派上用場了。右上角的 layer 目前應該會有兩個圖層:Data Layer 跟你剛上傳的路徑,這個時候對你上傳的路徑按右鍵,選擇 import images。然後把你剛剛照的照片全部一次都匯入。接下來會長這樣:


點選圖片後就會放大,你就可以知道你拍的照片是在軌跡的哪裡拍的了。最後一個步驟,就是依據你的 GPS 軌跡繪製地圖了。以我的例子來說,中央北路還沒補齊。


那你就可以利用左邊第三個工具繼續往下畫,畫完後用第二個工具隨便選取空白的地方取消選取。這樣就有新的路了。


 如同上圖所示,你會發現這時候有一個照片在路徑上,點開來看是『稻香路』,但是我並沒有真的往稻香路去,只是拍個十字路口。這時我就會依照的我印象,先作一條分叉路出去。並且用第二個工具選擇路徑,按右邊的 Add 增加屬性。新手的話我建議你先填 name 跟 name:zh,這兩個分別代表英文路名跟中文路名。這是一條道路最基本的屬性。如下圖


當所有路名都填完後,就直接按下載的右邊上傳鈕就可以上傳囉!記得先去註冊一個 Open Street Map 帳號,等下禮拜你就可以看到你繪製的地圖出現在網站上囉!

Open Street Map 擷取 gps 軌跡

當你回到家後,你應該會帶著紀錄了軌跡的 GPS logger 跟一堆路牌的相片回來。那第一件事情就是先把軌跡存到電腦裡面。首先你要安裝 mtkbabel,這套軟體在 Debian, Ubuntu 底下都有,只要打 apt-get install mtkbabel 即可。

這時請把你的 m-241 用 usb 連接電腦,下達以下指令:
mtkbabel -s 38400 -f `date +'%F-%H%M%S'` -t -w

另外我建議如果你的電腦有藍牙接收器,請先把他關閉。這時候你就會拿到三個檔案 <日期>_trk.gpx 跟其他一些檔案。這樣你就有 gps 軌跡檔了!

Open Street Map 路上概要

OK, 我假設你跟我一樣買了 Holux m-241 GPS 記錄器。那我們該如何開始呢?首先請先到戶外打開你的 GPS,直到他可以接收的到 GPS 訊號。接下來請將你的相機的時間與 GPS 的時間校正,要讓兩個時間一模一樣,這樣你才可以正確的定位相片位置。我自己是只用很爛的手機相機照相。反正只要可以拍的到路牌即可。拍起來大概會長的像這樣:


只要看的清楚中英文路名就好了。

接下來你就可以開始紀錄 GPS 啪啪走囉!這邊有個建議,通常我只會拍我正前方的路牌,假如說橫向道路有路牌我通常都不會拍。因為回去整理照片的時候方向感通常會被搞混,不記得你是在哪個方向拍的照片。

Open Street Map 簡介

Open Street Map (全球/台灣) 是一個開放內容的地圖專案。如果你有用過 Google Maps 的話,應該會很疑惑,既然有 Google Map 的話為何還需要另外一個地圖圖資呢?雖然 Google 的地圖軟體雖然方便,但是卻有使用上的限制。如果你仔細看 Google Maps 的使用條款,就會內涵非常多的限制。

而 Open Street Map 則是建立一個完全自由的圖資。所有資訊採 CC 授權,你可以自由的修改及散佈 Open Street Map。而你也可以自己建立你家附近的地圖,就像是維基百科上大家提供許多不同領域的百科資訊一樣,Open Street Map 讓使用者可以提供圖資給此專案。

而如果你想幫忙繪製地圖的話,你需要:

GPS 接收器
因為繪製地圖通常都需要利用 GPS 軌跡來協助標示街道,所以你需要一個 GPS 接收器。如果你想買個 GPS 接收器的話,我推薦你 Holux m-241 GPS Logger。他內建了儲存空間,可以讓你儲存 GPS 路徑,也可以透過藍牙連接到你的手機拿來導航。

相機
因為在路上行走的時候,其實你很難記下所有經過的街道,所以通常我們都再會經過街道的時候,拍下路牌,回去的時候,Open Street Map 有軟體可以幫你把 GPS 路徑跟照片整合在一起,這樣就可以知道你拍這個路牌的位置,可用來協助編寫地圖。

地圖編輯器(這聽起來好像魔獸在用的東西)
通常我用 JOSM 來編輯地圖。這東西剛開始看起來很可怕,但是有適度的教學後其實這個東西並不難。編輯完以後可以直接上傳地圖到 Open Street Map

另外,你上傳的地圖通常不會立即顯示,我沒記錯的話台灣的伺服器每週會更新一次。所以你可以在下禮拜看到你這禮拜畫的地圖。還有一件事情要注意,就是繪製地圖的時候請不要參考任何地圖(urmap, google maps, yahoo maps 或是紙本地圖),這樣作會版權疑慮。

逐漸浮現的地圖

最近買了 Holux m-241 GPS logger 後,就開始畫 openstreetmap 的地圖。經過一個禮拜後,自己畫過的地圖就逐漸浮上來了阿…。像是下面這條劍潭路以前是沒有的,這次就把他補了上去。

之前有聽過幾個 openstreetmap 的前輩講過如何畫地圖,不過因為一次講的東西實在太多,很難一次全部吸收。自己來畫過地圖後,覺得其實並沒有那麼難。

改天有時間再來寫教學文件吧 :P

2009/01/13

Tossug 2009 第一次聚會!



條列一下重點,
  • Ping 介紹了 Python 3.0,講的不錯,我想這次不懂 Python 的人應該都還能聽得懂吧 :D

  • Fred 把我的 Eee PC 刷成 Android x86 供大家把玩

  • chihchun, jserv 討論一些建立社群與廠商合作管道的問題

  • Ping 帶來了 G1 實驗機供大家把玩

2009/01/10

google earth debian package maker

今天買了 Holux m-241,所以就順便載 google earth 來看看,順便在 apt 撈撈看有沒有 package。沒想到有一個套件叫做 googleearth-package。

因為平常的 google earth 下載後是 .bin 檔案,很多使用 debian/ubuntu 的人應該比較偏好有個 deb 檔可以安裝到系統中。googleearth-package 是一個可以幫你把 .bin 轉換成 .deb 檔案的程式。使用方法只要在你下載 google earth 的目錄中執行 googleearth-package 就行了。

2009/01/06

Linux 上轉換及解碼單眼相機 Raw 檔

最近去香港玩,帶了新買的 Nikon D200。回來第一個問題就是要怎麼在 linux 解 raw 檔。看了一下網路上的資料後,其實主要有兩個基底軟體:dcraw 跟 ufraw 可以解 raw 檔,而 gimp 與 f-spot 都利用 dcraw/ufraw 來讓本身也可以瀏覽及修改 raw 檔案。

不過讓我感到疑惑的是只用 dcraw/ufraw 解出來的影像感覺起來顏色跟白平衡都不太正確。但是基於 dcraw 的 f-spot 解出來竟然是正確的。其實如果我可以用 f-spot 解決所有問題的話當然好,重點是 f-spot 匯出 raw 成 jpg 的時候又會爛掉…。

所以解法就是看 f-spot 怎麼對 dcraw 下參數的就好了。有興趣的可以看看 f-spot 的源碼

所以只要鍵入以下參數就可以匯出跟 f-spot 上看到相同的影像了:
dcraw -h -w -t 0 YOUR_RAW_FILES