如果你厭倦了gnome,kde這樣的復雜桌面環境, 可以嘗試下openbox這個輕量級的DE.
最大的優點就是占用資源少, 運行效率高.
安裝所需軟件
openbox: 最基本桌面環境, 必須的
slim : 輕量級圖形登錄管理器, 可以替代gdm/kdm
tint2 : 提供下面板
wbar : 提供一個dock
feh : 設置壁紙
obconf : openbox的圖形化設置工具
obmenu : openbox的圖形化菜單編輯工具
tint2conf: tint2的圖形化設置工具
wbarconf: wbar的圖形化設置工具
lxappearance: lxde的外觀設置工具, 可同樣用於openbox, 設置主題, 窗口字體等.
pcmanfm: 文件管理工具
obmixer: 托盤區音量圖標
nm-applet: 網絡連接管理器
scrot : 截屏工具
除openbox是必須的外, 其它軟件均有替代品. 可以在熟悉之後自由更換.
1. 安裝openbox相關軟件
各大發行版源中應該都有, 這裡以archlinux為例
pacman -S openbox slim tint2 wbar feh obconf obmenu tint2conf lxappearance pcmanfm scrot
#以下需要從aur安裝, 可以用yaourt
wbarconf obmixer
2. 修改/etc/inittab
在最下方的引導工具中, 注釋掉gdm/kdm語句, 並取消slim語句注釋
改完如下所示
#x:5:respawn:/usr/sbin/gdm -nodaemon #x:5:respawn:/usr/bin/kdm -nodaemon x:5:respawn:/usr/bin/slim >/dev/null 2>&1
3. 修改~/.xinitrc, 加入這一句
exec openbox-session
復制代碼
以便開機啟動openbox進程
注: 在同一台機上, gdm/kdm/openbox環境是可以並存的. 由引導器決定到底啟動哪個DE.
2,3二步的目的就是在保留gnome/kde環境的前提下, 引導openbox.
同理, 如果你又想切回gnome/kde環境又該怎麼做呢?很簡單, 只要把2,3二步反向操作下就可以了, 即注釋掉slim和openbox-session二句,並取消gdm/kdm的注釋即可. 這也是為什麼推薦用slim的原因, 和原有的環境保持分離.
4. 創建~/.config/openbox/autostart.sh
openbox啟動時, 默認會執行這個腳本, 所以可以把要啟動的程序都寫在這裡
注意, 安裝時不會自動創建這個文件, 需要自己手動創建
內容如下
nm-applet& tint2& (sleep 2 && wbar)& ibus-daemon -rxd& (sleep 2 && obmixer)& feh --bg-scale picture.jpg
wbar, obmixer都要先等幾秒再啟動, 否則可能會有意想不到的錯誤. 個人經驗,
也許你不用等待也會一切正常, 自行選擇吧.
4. 重啟電腦, 以便加載openbox環境
5. 輸入帳號密碼後, 你就可以看到openbox環境了, 是不是太簡潔了?
沒關系, 現在可以使用各個圖形化設置工具了.openbox的配置文件主要有二個,分別是~/.config/openbox/rc.xml和~/.config/openbox/menu.xml.前者可以由obconf更改, 後者可由obmenu更改
注意:
obconf不能自定義rc.xml中的快捷鍵部分, 這裡需要自行添加
obconf: 雖然可改項很多, 但實際上並沒有多少要改的,默認即可
obmenu: 在桌面右鍵時, 會彈出一個菜單. obmenu就是自定義這個菜單的
lxappearance: 相對來說, 這個可能更適合大多數用戶, 選擇窗口主題, 鼠標主題等等.
tint2conf: 自定義tint2面板
wbar-conf: 自定義wbar
6. 附幾個配置
a. rc.xml中的”顯示桌面”快捷鍵設置, 這裡用的windows+d
b. rc.xml中的”截屏”快捷鍵, 截取當前窗口, ctrl+Print Screen
全屏載取, Print Screen
c. rc.xml多媒體快捷鍵設置
音量放大
靜音
打開主頁
多媒體快捷鍵配的難點主要在於確定該鍵位的表示名稱, 大多數名稱都是通用的.
XF86AudioPlay 多媒體播放
XF86AudioPause 多媒體暫停
XF86AudioMute 靜音
XF86AudioRaiseVolume 增大音量
XF86AudioLowerVolume 降低音量
XF86HomePage 浏覽器打開主頁
XF86Mail 郵件
XF86Sleep 休眠
XF86Calculator 計算器
d. 一個隨機壁紙腳本, 有bash和python二種寫法. 可以任選一個放到crontab裡, 實現壁紙定時更換
bash寫法
#!/bin/bash #set -x dir_wallpaper="/home/allblue/pictures/wallpapers" cd "$dir_wallpaper" #du比ls更適合列出子文件路徑, 只要刪出行首的大小與空格, 就可得到子文件的完整相對路徑.
pic=$(du -a . | sed -r 's/^[0-9]+//' | sed -r 's/^[ \t]+//g' | sed -n -r '/png|jpg|jpeg/Ip' | shuf | head -1) echo "" date echo "$pic" if [ -f "$pic" ]; then #crontab運行時,需指定DISPLAY變量 DISPLAY=:0 feh --bg-center "$pic" & killall wbar #wbar默認會以英文環境啟動, 需指定LANG變量 env LANG=zh_CN.UTF-8 DISPLAY=:0 wbar --pos top-left --isize 35 --zoomf 1.8 --jumpf 1 --bpress &·· fi
python寫法
#!/usr/bin/python #encoding=utf-8 import os import random def filepath(v,fdir): h=os.path.abspath(fdir) if os.path.isdir(h): for subdir in os.listdir(h): filepath(v,os.path.join(h,subdir)) else: v.append(h) #print(h) ········ if __name__ == "__main__": sdir="/home/allblue/pictures/wallpapers" u=[] filepath(u,sdir) item="" item=random.choice(u) #print(item) if item.split(".")[-1].lower() == "jpeg" or item.split(".")[-1].lower() == "jpg" or item.split(".")[-1].lower() == "png" : item = '"'+item+'"' cmd="DISPLAY=:0 feh --bg-center "+item+" &" os.system(cmd) os.system("killall wbar") os.system("env LANG=zh_CN.UTF-8 DISPLAY=:0 wbar --pos top-left --isize 35 --zoomf 1.8 --jumpf 1 --bpress & ")