linux原生桌面,亲手打造自己的Linux桌面环境
試問:Linux的最大好處是什么?安全性、穩(wěn)定性、高性能,還是它帶來的自由?它在所有這些方面都表現不賴,但是我們想著重強調的另一個特點是其模塊性。作為一款深受Unix影響的操作系統(tǒng),GNU/Linux被設計成容易拆開來,又容易裝回去,如果一切順利的話。系統(tǒng)的各個主要組件都是用小組件起來的,這些小組件可以忽略或更換,這就是為什么我們會有如此多不同的Linux發(fā)行版的原因之一。
當然,這種模塊性有時增添了復雜性。不過它也增添了可靠性,因為各組件被設計成可以獨自運行;如果某個組件崩潰或遇到了某種軟件錯誤,其余組件在理想情況下會繼續(xù)正常運行。所以,你可以用另一個外殼來代替Bash,或者改用一個替代的SSL庫,或者甚至更換整個init系統(tǒng)――我們從主要的發(fā)行版遷移到Systemd見到了這一幕。
但是桌面環(huán)境方面又如何呢?KDE、Gnome和Xfce不都是大型的整體式項目嗎?實則不然。它們是用彼此高度依賴的較小的程序和庫組建起來的,但是可以去掉某些組件,或者把它們換成其他組件。如果更進一步,還可以完全從頭開始構建一個桌面環(huán)境,你只要精心挑選幾個特定的程序,把它們連接起來,然后確保它們可以同時運行。
從頭開始構建一個桌面環(huán)境其實相當好玩,也是一次很好的學習過程,所以我們在下面就介紹這方面。你可以選擇適合自身工作流程的組件,最終結果就是,比像Gnome和KDE這些“重量級”桌面環(huán)境輕盈得多、快速得多。另外,你在參加下一次Linux用戶組會議時可以向朋友吹噓,你才不用哪個普通的預包裝桌面環(huán)境,而是構建了自己的定制桌面,顯擺一下你在Linux這條路上比別人走得更遠。
下面是我們將要使用Openbox、PCManFM和Docky創(chuàng)建的定制桌面,但是可以把所有組件完成其他的東西!
一、桌面環(huán)境是什么?
啟動你的常規(guī)桌面,看一下:上面可能有面板、通知區(qū)、窗口標題欄以及其他界面元素。這些都是桌面環(huán)境所提供的,但是如果我們更深入地探究一下,還會找到其他功能。桌面環(huán)境還處理實現應用程序之間切換和關閉應用程序等操作的鍵盤快捷方式,另外還處理桌面墻紙、小應用程序(比如處理器監(jiān)視工具)和花哨的窗口效果。
現在,這些特性并不是由單單一個程序提供的,而是由一批程序提供的。比如在Xfce中,在終端中運行ps ax | grep xfce會顯示名稱中有xfce的所有進程,這樣的進程有好多個。大多數名稱顯而易見,所以你可能明白,xfce4-panel提供了位于屏幕邊緣的面板,而xfce4-power-manager監(jiān)視你的電池電量,處理電源事件(比如合上蓋子)。
Gnome和KDE的工作方式幾乎如出一轍。你忍不住想使用來自每個桌面的一個個組件,然后組合起來,以此構建某種極其出色的混合桌面,但是最終結果實際上不是那么理想。如上所述,每個桌面環(huán)境下的程序旨在協同工作,具體來說是在那些桌面環(huán)境下工作,所以如果你使用來自KDE的面板、來自Xfce的電源管理器,以及來自Gnome的窗口管理器,最后得到的將是一種大雜燴式的桌面,耗用大量內存。畢竟,你要裝載來自每個桌面環(huán)境的庫及其他進程,所以這就好比同時在運行這三個桌面環(huán)境。
我們可不想這樣。我們要做的是,選擇小巧的、占用內存少的獨立式組件,它們不依賴其他東西,但是可以順利地協同運行。如往常一樣,在自由軟件領域有一大堆組件可供選擇,所以不妨看一下主要的組件。
二、選擇窗口管理器
盡管我們要使用單個的獨立式程序來打造定制的桌面環(huán)境,但是X Windows System(桌面的基本圖形層)里面還是有一些標準,可以確保它們能夠順利地協同運行。首先,不妨看一看窗口管理器方面的幾個選擇。
1.名稱:Openbox
網址:http://www.openbox.org
Openbox被設計成小巧、快速,大概是最出色的全面的獨立式窗口管理器。完全可以單獨使用它,但通常與其他工具結合使用。拿LXDE來說:這是一種使用Openbox來管理窗口的輕量級桌面環(huán)境,也是流行的Ubuntu發(fā)行版的桌面。Openbox還是現已銷聲匿跡的CrunchBang發(fā)行版(憑借CrunchBang++迎來了新生)和ArchBabg的默認窗口管理器。
甚至可以在Gnome或KDE里面使用Openbox,更換其原生窗口管理器。Openbox出現在幾乎各大發(fā)行版的軟件庫中,可以用“crunchbang”命令,從腳本來啟動(后文會有介紹)。
2.名稱:i3
網址:http://i3wm.org
Openbox是一種傳統(tǒng)的鼠標操作的窗口管理器,相比之下,i3完全離不開鍵盤快捷方式。這讓用戶一開始有點難以掌握,因為你得花點時間閱讀說明文檔,才能適應它。不過一旦你記住了鍵盤快捷方式,就會愛不釋手。i3在想要經常使用鍵盤、而不是操作鼠標的編程人員當中特別受歡迎。
另外,i3是一種平鋪式窗口管理器。不像傳統(tǒng)的窗口管理器:窗口散布于屏幕四周,一些窗口覆蓋在另一些窗口上,在i3中,你可以將窗口組織整理成屏幕上不同大小的圖塊(區(qū)域)。所以在寬屏顯示器上,你可以讓火狐占用屏幕左邊50%的區(qū)域,兩個終端窗口占用右邊的上下兩部分。如果你有一塊大屏幕,會發(fā)覺平鋪式方法的效果確實很好。
3.名稱:Awesome
網址:http://awesome.naquadah.org
Awesome是另一種設計時就想到鍵盤使用的輕量級窗口管理器。它還旨在與各種X標準兼容,可通過Lua腳本語言來進行擴展。其開發(fā)人員稱之為“框架窗口管理器”――換句話說,你可以在此基礎上,使用Lua定制及其他附件,定制一個功能更強大的窗口管理器。
4.名稱:JWM
網址:http://www.joewing.net/projects/jwm/
JWM是用普通C編寫而成的,使用基本的X庫,所以它的依賴項非常少,很容易編譯。它旨在最大限度地利用內存有限的舊計算機,但是如果你就想挑戰(zhàn)一下自己,它是個不錯的選擇。JWM含有自己的簡單面板,但是你可能想要更易配置、外觀更漂亮的面板,稍后我們會探討。
好了,以上就是市面上幾個最出色的窗口管理器。不過還有更多的窗口管理器值得探究,如往常一樣,Arch Linux維基(https://wiki.archlinux.org/index.php/Window_manager)是個很好的資源,值得一讀。
三、面板、文件管理器和額外組件
一旦你選擇好了窗口管理器,就需要為它添加一些額外組件來美化,比如漂亮的面板(用于啟動和管理程序),以及文件管理器。如果你是個經驗豐富的Linux用戶,可能很高興在終端上處理所有的文件工作,但是我們還是會介紹幾個選擇。
1.名稱:Cairo-Dock
網址:http://glx-dock.org
Cairo-Dock提供的面板在外觀上酷似Mac OS X的停靠欄――至少,在10.10(Yosemite)采用扁平化設計之前是這樣。它的“3D平面”模式看起來很眩,光滑的圖標駐留在玻璃托盤上;你將鼠標移到圖標上后,它們的大小會稍稍變大。右擊圖標,就可以定制圖標,或者選擇一直存在的Cairo-Dock子菜單,該子菜單讓你可以配置整個面板。默認情況下,Cairo-Dock顯示了最流行的FOSS程序(假設你已安裝)的對應圖標,比如火狐和Thunderbird等程序。
如果你要在虛擬機中測試定制桌面,請注意:首次啟動后,Cairo-Dock會詢問你是否想使用OpenGL。這在物理硬件上很有用,讓停靠欄的效果顯得更流暢,但是在VirtualBox里面,它會帶來問題,所以最好還是讓它處于被禁用的狀態(tài)。
Cairo-Dock隨帶豐富的漂亮效果,非常酷似Mac OS X。
總結
以上是生活随笔為你收集整理的linux原生桌面,亲手打造自己的Linux桌面环境的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微软的MSR paraphrase数据集
- 下一篇: Java线程池与Lambda表达式