2007年12月10日 星期一

[軟體介紹] WebKit on Linux (ubuntu) -- GTK+ 篇

繼上一篇 "[軟體介紹] WebKit on Linux (ubuntu) -- QT 篇" 中介紹了用 QT 函數庫安裝
或許有些朋友覺得說本身用的是 Gnome 而非 KDE
有沒有採用 GTK+ 函數庫的 WebKit 版本阿?
很歡樂的是,最近剛好誕生了一款叫做 "Midori"的瀏覽器軟體

稍微翻譯一下官方網站介紹的 Midori 內容
Midori 是一個輕量化的瀏覽器
*完全採用 GTK+2 打造。
*快速繪製出 WebKit
*分頁、視窗與任務對話管理。
*書籤的儲存方式是使用 XBEL
*搜尋框則是基於 OpenSearch 上。
*可自訂前後選單動作。
*支援使用者腳本與樣式自訂。
*可透過 Lua scripts 擴充。
然而,這個專案目前還是屬於 alpha 測試版的狀態,所以可能會比較不穩定些。
(啥?翻譯的很爛?好吧,我承認我爛的不只是英文 Orz)

Midori 目前則可以透過 apt-get 的方式去安裝到他
不過得先編輯一下 source list
sudo gedit /etc/apt/sources.list
然後加入以下兩行
deb http://ppa.launchpad.net/stemp/ubuntu gutsy main
deb-src http://ppa.launchpad.net/stemp/ubuntu gutsy main

儲存後離開,並且更新一些 source list 吧
sudo apt-get update
然後就可以安裝 Midori
sudo apt-get install midori
跑完後,就可以直接從 "應用程式" 裡的 "網際網路" 開啟 Midori

大公告成,看到沒?這就是 Midori 的掃描砲彈啦 :D



恩,這邊就來解釋一下為啥上一篇 "[軟體介紹] WebKit on Linux (ubuntu) -- QT 篇" 時,要說那個只是個 "偽 Safari" 呢?
請看以下圖片就知道啦 XD

第一張是我們的 "偽 Safari" ,第二張則是剛剛裝好的 "Midori"
請把眼睛往下面粗框的部份看


看到沒有?第一張用 QT 跑的WebKit 被這種會去判斷瀏覽器送出的 http header 資訊的網站解析成 "Safari" 了,所以我才說他是 "偽 Safari" 嘛 XD
第二張呢,則是該網站無法解析 "Midori" 所送出的 http header 中的 agent 欄位
所以會顯示成這樣
好啦,那就祝各位使用愉快摟 :D

[軟體介紹] WebKit on Linux (ubuntu) -- QT 篇

在經歷了每天 n 次 crash 的 firefuck 洗禮後
終於受不了跟了 jserv 抱怨了一下
於是在他的推薦下,我去嘗試了這樣的東西 "WebKit"

WebKit 是一種開放原始碼瀏覽器引擎,同時他也是 Mac OS X 底下的 Safari 、 Dashboard, Mail、與其他 OS X 所使用的系統框架版本。WebKit 所使用的 KDE 函數庫 KHTML 與 KJS 是屬於 HTML 與 JavaScript 的分支。
(以上是從 WebKit 官方首頁上大致翻譯所得 XD)

所以簡單說
他原生版本只有在 KDE
在過去,如果要跑的話,只能裝上 Konqueror 來爽一下
畢竟 Safari 也是改自於 Konqueror 的嘛
KDE 上所使用的視窗程式語言框架就是著名的 QT 所以我們在這邊就是要介紹在 ubuntu 底下怎樣透過 QT 的函數庫來建立一個以 WebKit 為基礎的 "偽 Safari"
(至於為啥叫 "偽 Safari" 呢?我在下一篇 "[軟體介紹] WebKit on Linux (ubuntu) -- GTK+ 篇"會講 XD)

請跟著我下面的步驟做,就可以安裝好一個 "偽 Safari" 了 XD
1. 先安裝一些等會編譯時所需要的軟體與套件庫
sudo apt-get install libqt4-dev libxslt-dev gperf bison libsqlite3-dev flex build-essential subversion
2.SVN 去撈回原始碼 (這邊我抓了快 20 min ,所以請多等待一下)
svn checkout http://svn.webkit.org/repository/webkit/trunk WebKit
3.建立一個 WebKit 的瀏覽器 (我的機器 Intel CoreDue L2300@1.5GHZ 跑了接近 45 min ,所以,可以先去吃個飯,丟給他慢慢跑 Orz )
QTDIR=/usr/share/qt4/ WebKit/WebKitTools/Scripts/build-webkit
4.安裝完後,打以下指令開啟剛剛建立的瀏覽器吧 :P
WebKit/WebKitBuild/Release/bin/QtLauncher

看到了沒?我們的 "偽 Safari" 出現啦 :D


恩,功能很陽春沒錯
但是拿來做一般性瀏覽與測試用已足夠啦
或許有人會問說要這種東西幹麻用?
其實這是種屬於比較實驗性質的東西啦
針對嵌入式系統或者客制化系統時
需要個簡易瀏覽器,卻又不需要像 firefuck 這種癡肥的東西時
WebKit 會是個好選擇 :)h