上次用 Wine 1.0-rc1 測試了一下 KKBOX,由於上次測試時使用 Wine 實做的 ShDocVwMsHtml 等元件。由於無法透過內嵌的網頁登入,因此大部份某些功能無法順利使用。

但你若先將 Microsoft Media Player 與 Microsoft Internet Explorer 裝進 Wine 中,就可以順利執行起 KKBOX 了!安裝過的過程十分繁複,因此我其實是透過 wine-doorsIEs4Linux 才安裝成功。由於 IEs4Linux 預設會安裝一個獨立的 wine 系統,並把軟體預設安裝 $HOME/.ies4linux,因此必須稍加修改 IEs4Linux,以便強迫它安裝到正確的 wine 目錄。然後再重新安裝執行一次 KKBOX 即可成功啟動啦。

使用狀況倒是沒有甚麼問題,可聽取線上串流,離線下載由於尚未購買月卡,還無法測試。目前的一點點小問題是,左邊的選單還是亂碼,一般下拉式選單倒是沒有問題。此外嵌於軟體首頁的 Flash-based MV 會有嚴重閃爍的問題。

這是在 wine 1.0-rc1 與 wine 1.0-rc2 上測試。待有善心人士整理 Step by Step HOWTO. 或者乾脆整理成單鍵安裝程式吧。

這個月底,將是 Wine 計畫成立十五週年!Wine 也將終於在十五年後釋出 1.0 版 !!

這兩三年,由於 Google 的積極參與 (Google 的其中一個產品 Picasa for Linux 是基於 Wine 所開發),許多程式如 Adobe PhotoshopAdobe Flash 都已經可以在 Wine 上面成功執行,相容性已經有大幅度的改善

因此我也試著再度玩起 Wine,試著裝了 wine, wine-doorsIEs4Linux,幾個主要的軟體、元件如 DCOM 98, MSXML 3/4, GDIPlus, Visual C++ runtime library 6, Internet Explorer, Micrsoft Media Player 9 等倒是沒有問題。

前些時候裝了 Sling Player, 以及 Macromedia 的 Dreamweaver 8, Fireworks 8 (可透過 winedoors 直接安裝) 大致上也可以運作。

接下來又測試一些台灣使用者常用的 Windows 程式,如 Foxy, GOGOBOX 與 KKBOX 等,則碰了些無法使用的障礙。雖說安裝都沒有問題。

首先是 Foxy (請別作道德勸說,這純粹是測試相容性),安裝時提示畫面,中文會顯示亂碼,但是可以成功的安裝,且系統也會自動設定啟動選單。但是啟動後,系統會出現以下錯誤訊息:

Unhandled exception: page fault on read access to 0x00000020 in 32-bit code (0x00422cb4).

過了啟動畫面後,無論如何都無法進到主程式,只好先回報到類似的問題上,稍後再求解。

另外一個測試的軟體是 GOGOBOX,安裝也沒有任何問題,也可以啟動主程式後登入系統。也可以進行「累積里程」的行為。但是 GOGOBOX 的使用是先從網頁上下載安裝檔,然後在點選網頁上得連結時,透過 ActiveX 元件將下載網址傳給主程式。

在進行點選連結時,Internet Explorer 可以叫起 GOGOBOX 主程式,但是軟體會不停的提示「GOGOBOX 檔案傳送管理員沒有設置好,或是新版本已問世。要現在設置/更新嗎?」,卻始終無法正確的把下載檔案傳進 GOGOBOX 主程式。殘念。

另外一個測試的軟體則是 KKBOX,安裝的過程中也沒有異狀,執行後可以進到主程式,雖說選單是亂碼。但是由於無法退出軟體啟動時的 Panel,也就是中間的「註冊」、「登入」提示畫面。那個畫面是嵌入一個瀏覽器元件,理論上按下「註冊」,系統應該開啟一個註冊網頁,若按下登入,系統應該提示一個登入對話視窗。

然而,此時按下註冊或其他網址,軟體毫無反應。應該是 shdocvw 未實做完全的緣故。若按下「登入」畫面,軟體則出現 “Unhandled exception: page fault on read access to 0x0100bbf8″,然後退出視窗。

要讓這些在中文微軟視窗使用者流行的軟體在 Linux 上順暢執行,還有許多功夫要下阿。

上一篇提到可以透過 debconf 的無交互介面的軟體安裝,其實你尚可以用 debconf 來做 preseeding (sarge 的中文手冊也提到 preseeding)的設定檔。Preseeding 是一種製作「無人值守」安裝光碟的方法,基本上就是以預先設定回答所有安裝過程中會詢問的問題,因此你可以先做好一片預定安裝的軟體與設定的安裝光碟/設定檔,然後使用該設定自動安裝機器。透過 debconf 的幫忙,你可以先架設一台 Debian 主機作為「種子」,然後以該種子的設定複製到其它的新安裝機器上。作法相當容易,你可以使用 debconf-get-selections 取得種子機器的所有設定,透過參數程式會吐出一段樣本,再依據需求校改即可。

# debconf-get-selections --installer

相關的語法同手冊描述,修改完成的 preseed.cfg 可於置於網路或磁碟中,再於一般的 Debian 安裝光碟中指定路徑即可。雖說相關的指令不難,但是若要修改到可以順利安裝與調整的程度,還是需要相當多時間調校,相關說明不妨參考 Automating new Debian installations with preseeding

AndrewLee 利用 preseeding 做了一組 Debian for Beginners,內容整合了中文相關的套件與常用的軟體。陸陸續續也校修了不少問題,有興趣使用 Debian 的人不妨試用安裝。至於想偷學技巧人,請往 http://debian.org.tw/d-i/etch/preseed.cfg 挖寶去吧。

If you ever read my blog entry for setting up the Debian.org.tw, you probably already know that I love to use reverse proxy in the front of my web servers. This approach can solve the signal IP address for multiple Vservers problem, also it can provide web cache which reducing the server loading.

Since the proxy server (Squid) pass the http session to the real web servers, one of the problem is that my web servers always saw signal source IP address, which is the proxy’s IP address. Even through the proxy server still put the client’s IP in the `X-Forwarded-For’ http header, it’s still painful to retrieve the correct IP address from the head in every web application.

Thanks for Thomas Eibner, who wrote the reverse proxy add forward module for apache. The module simply check the IP address to see if it comes from the proxy server, if it is it will put the IP address in `X-Forwarded-Host’ or `X-Host’ to `Host’ header. So you don’t need to worry about the wrong IP address, and track the http requests more easily.

Debian package is ported by Piotr Roszatycki, but it’s still the old 0.5 version. Since the 0.6 is out, I filed a bugreport for remind him. For my etch servers, I back-ported the package with the last version. You can download it from my personal repository.

BTW, Piotr Roszatycki use yada for libapache2-mod-rpaf, who is also the maintainer of yada. After reading the yada’s script file `debian/packages’, I really feel like I went to my `good’ old days with RPM/specs. :p

Image Source: ScriptumLibre

Free Software Foundation 最近發起了一項抗議運動,請大家拒買趨勢科技的防毒軟體。主要原因是趨勢科技 (Trend Micro) 指控 Barracuda 的產品中使用 ClamAV 違反其5,623,600 號專利,也就是陳怡樺的空中抓毒專利。這則專利是在 1995 年申請、1997 年四月通過,內容主要是實做 SMTP Proxy 與 FTP Proxy 來進行掃毒的作法
Continue reading

If you are using Debian or Ubuntu, and installed the Gnome system by default. Your system probably already has Gnome Volume Manager.

The Gnome Volume Manger is a daemon which listens the hardware events (HAL event), and run the user-configurable commands. Basiclly, it do autorun, automount for the hot-plugged devices. In plain English, it run the Multimedia Player or CD Burning software when you put a CD into the cdrom driver.

Continue reading