Linux Desktop Environment 的困境與展望

今年的願景之一,就是為 Linux 塑造一個好用又輕窕的 Desktop Environment,因此加入了 【 Lightweight X11 Desktop Environment 】的行列。而經過這半個月的努力,在一些基礎項目的部份,總算有些小小成果。當然,實作過程中發現了不少 Kernel/GTK+/Other-DE 所存在的困難和問題,詳細了解後更訝異其設計理念是如此 suck !

經過大致的觀察,整理歸納將會著手進行改善 Desktop Environment 的方向:

  1. DE 不單單只是 Console 的外衣。
  2. 由下而上的整合 Kernel 與 DE。
  3. 人性化 UI 以減少 text command 的使用機會。
  4. 一氣呵成的功能和操作流程。
  5. 減少合併過多且重覆的 service,並設計更具開放性、擴充性的控制通道以整合 DE。
  6. 沒有 Power User 只有 Normal User。

從使用者的角度來看,現今有的 DE 不過是將醜陋的 Kernel/Console 包裝起來,只是醜陋的觸角『從文字變成了圖形』。由於學習眾多圖形介面系統的優秀外貌,更將該外貌直接套嵌在 kernel 身上,出現了各種中看不中用的 applet、trayicon、GUI tools ;為了更進一步解決各種『效果』,又出現了 FreeDesktop.org specs、DBus、HAL 等規範。當然,最後一團亂的結果,得到了比 Windows XP 還要可怕的硬體需求度。

如今的 Linux Desktop Environment,彷彿只是為了不想輸給『M$ Windows』和『Apple Mac』,在一頭燒的情感衝突下的產物。各種因為不想輸所產生出來的東西,除了難用之外,更缺乏 performance ,導致各種『人性化設計』被仿造在 Linux DE 上後便淪為『人性化效果』。最常被提到的『FreeDesktop.org specs suck!』,就是為了達到各種『人性化效果』,強暴系統I/O 操作的最佳『血腥』案例。

以本人目前正在實作 netdaemon 時碰到的問題為例:這種網路監控 Icon 在 Windows 上其實是全套的,除了從下而上的顯示當時連線狀態之外,更搭配了自動修復連線等一系列動作。而在觀察 Linux 各家版本的同類實做之後,發現這一系列的工作被分工成 netplugd、NetworkManager、nm-Applet 等等許多 service,常常是『頭痛醫頭,腳痛醫腳』,光是一個網路監控就要跑成數個 Daemon,甚至功能還有重疊。

在人性化方面最令人頭痛的是,Linux 玩家對 console command 一個指令一個動作的情況都習以為常,DE 的設計者常常還真的做出相對應 console command 的各種選項功能,但總是未仔細思考過操作流程就一股惱丟給使用者,對本來在 console 下就如魚得水的人來說或許沒感覺,但對 Normal User 來說,這是極度『假人性』的舉動。

人們常說『梧鼠五技而窮』,當今 Linux Desktop Environment 會跑、會飛、會跳。但都跑不快、飛不遠、跳不高,針對各項人性化功能缺少一氣呵成的設計。希望在現在各大廠積極投入 Mini PC 的行列後,能多少為 Linux DE 帶來新的氣象!

除此之外,跳脫出現有大型 DE 的侷限,當前正在投入實作的專案 LxDE ,目標就是在低等級的電腦上也能順暢的執行,當然易用性和實用性也是不能少的,以下是無聊時為 LxDE 畫的桌布。



PCMan 認為 LxDE 跑在 EeePC 是一個不錯的選擇,但由於目前我們手邊都沒有機器可以實測,還需要有人能幫忙做測試。

最後小廣告一下,lxpanel - 『volumealsa plugin』 已經 commit 到 svn 了,如果有人在過去無法正常使用 volume plugin ,可以嘗試使用這新版的 volume control for ALSA。

留言

  1. 實測過了,發現 lxpanel 的背景功能有問題
    在那裡設定背景也會干擾到其他視窗
    例如「執行」對話框的背景也會被搞爛。
    這部份可能需要檢查一下

    另外這個功能似乎無法取消,
    現在改成這樣只能在使用背景圖和透明之間擇一
    卻沒辦法兩者都不使用,這樣變成無法不使用背景。
    希望有空可以改成有個選項是全部關閉 :P

    BTW, 我昨天試著用 idesk 來提供桌面圖示
    除了不好設定外,其實看起來還不賴,滿有趣的 :)

    回覆刪除
  2. 對了,那張背景圖超棒!!!!
    想要一張這樣的圖好久了
    Good job!!!
    收下了,正在使用中 :)

    回覆刪除
  3. 關於背景干擾問題我已經正在著手解決。
    目前 volume 和 volumealsa 已經沒有此問題了 :P

    而取消背景的選項是我遺漏了,我將盡快補上。

    註:如果需要其他大小的桌布,再跟我說吧。我這還有紅的、綠的、黃的、橘的,適合不同陣營的人馬使用 XD

    回覆刪除
  4. 加油啊,不過其實eeePC的規格,來跑LXDE實在太足夠了XD

    回覆刪除
  5. 我三月份會繼續開發 file manager 釋出新版
    你可以測試看看 0.3.5.7,除了不穩以外沒大問題
    well, 其實不穩本身就是最大的問題,MT 沒寫好
    lxpanel 的部份暫時就靠你了 :)
    其實我倒是覺得,在各個 plugin 上加上
    右鍵選單讓使用者能快速呼叫各自的設定介面
    是個很重要的功能。都藏在 plugin 設定頁
    實在太難找,還有人以為只能改設定檔...

    BTW, 其實我覺得要用在 eeepc 上
    會有個很大的問題... eeepc 螢幕太小
    這使得 panel 將會變得很擠
    原本的工作列,可能在開啟視窗多幾個之後,
    就會擠到看不清楚上面的項目了

    回覆刪除
  6. lxpanel 的部份,我會在有空的時盡力的 :P

    而關於 pcmanfm 我會再更仔細試試看,目前已經有一些改進的 idea,等更進一步確認後會跟您討論討論。

    至於 EeePC 螢幕小的確是一個大問題,不過我想,這是考驗 design interface 能力的好時機!:)

    回覆刪除

張貼留言

這個網誌中的熱門文章

有趣的邏輯問題:是誰在說謊

Web 技術中的 Session 是什麼?

淺談 USB 通訊架構之定義(二)

淺談 USB 通訊架構之定義(一)

Reverse SSH Tunnel 反向打洞實錄