rox + openbox + fbpanel + conky打造又快又稳的桌面

时间:2020-12-03 20:55:13
从开始用 Gentoo 以来,就没有打算用 gnome 、 KDE 这些巨无霸级别的 DE ,最后选择了相对来来说比较轻量级的 Xfce4 ,不过最近更是变本加厉,连 Xfce4 都觉得太大。于是,下面的组合诞生了。
引用rox (desktop) + fbpanel (panel) + openbox (wm) + conky (monitor)
什么是 rox ?
引用ROX is a fast, user friendly desktop which makes extensive use of drag-and-drop. The interface revolves around the file manager, or filer, following the traditional Unix view that `everything is a file' rather than trying to hide the filesystem beneath start menus, wizards, or druids. The aim is to make a system that is well designed and clearly presented. The ROX style favours using several small programs together instead of creating all-in-one mega-applications.
什么是 fbpanel ?
引用fbpanel is a lightweight, NETWM compliant desktop panel. It works with any NETWM compliant window manager (eg xfwm4, sawfish, openbox, metacity, kde wm )
什么是 openbox ?
引用Openbox is a highly configurable, next generation window manager with extensive standards support.
什么是 conky ?
引用Conky is a light-weight system monitor under active development.

配置开始:
1. 需要的程序
桌面: rox
panel: fbpanel
wm: openbox
监视器: conky (可选)
文件管理器: rox-filer (可选)
openbox 配置: obconf (可选)
openbox 菜单: obmenu (可选)
theme 配置: gtk-chtheme (可选)
背景设置: feh (可选)
X 键映射值抓取: xev (可选)
别看程序多,可是加起来应该不到5M。
emerge -av rox fbpanel openbox conky obconf obmenu gtk-chtheme feh xev

2. 各个程序的配置文件或目录
引用rox : ~/.config/rox.sourceforge.net/
fbpanel : ~/.fbpanel/default
openbox (menu) : ~/config/openbox/menu.xml
openbox (rc) : ~/config/openbox/rc.xml
openbox (autostart) : ~/config/openbox/autostart.sh
conky : ~/.conkyrc

3. 修改启动
# vim /etc/rc.conf
找到 XSESSION ,把值改为 openbox-session ,用 startx 启动就可以用了。
引用XSESSION="openbox-session"
如果你是使用 xdm/gdm/kdm ,那么直接图形化修改就行了。

4. 配置 openbox 的 autostart.sh
# vim ~/config/openbox/autostart.sh
引用# rox-filer
# 桌面由 rox 接管
killall rox > /dev/null 2>&1
rox -p default &

# xscreensaver
# 屏幕保护
killall xscreensaver > /dev/null 2>&1
xscreensaver &

# wallpapers
# 设置桌面,这里注释掉了,因为桌面已经交由 rox 管理。
# 如果不需要 rox 管理桌面,可以在这里设置桌面的壁纸
# feh --bg-scale /path/wallpapers.jpg &

# set panel
# 挂载上 panel
killall fbpanel > /dev/null 2>&1
fbpanel &

# Conky
# 挂上漂亮的监视器,这里被我注释掉了,因为和 rox 搭配还有一些小问题未解决。
# killall conky > /dev/null 2>&1
# conky &

# Fcitx 输入法我也写到这里了,呵呵。
killall fcitx > /dev/null 2>&1
fcitx &
关于 autostart 的配置可以点击这里查看 wiki

5. 配置 fbpanel
# vim ~/.fbpanel/default
fbpanel 的配置文件就这一个,非常的简单,而且几乎不用配置就可以用了,我就基本上没改这个配置文件,具体的参数可以见这篇官方 wiki

6. 配置 conky
# vim ~/.conkyrc
关于 conky 的配置可以参看我前面的日志

7. 配置 openbox menu.xml
# vim ~/.config/openbox/menu.xml
这就是配置右键菜单的。
可以写出你自己认为最省时省力的右键菜单,完全完全的自定义,不过也是最麻烦的,因为全手工写。具体的规范可以看这篇 wiki
如果觉得手写麻烦,也可以使用 obmenu 这个程序来生成,很容易。

8. 配置 openbox rc.xml
这是 openbox 配置里面的重中之重,快捷的操作就全靠它了。具体的规范可以看这篇 wiki 全局的一些设置可以使用 obconf 这个程序来进行修改,但是快捷键的设置还是得靠手写了。这个文件配置好了,效率可以提高30%以上。
# vim ~/.config/openbox/rc.xml
这个配置文件里面可以设置的 action 非常多,你能想到的,它几乎都有,可以参看这篇 wiki

9. 配置 rox
总算有个不是改配置文件的了,呵呵。默认的 rox 管理桌面还要修改修改配置。当然也可以看自己的喜好来设置。
rox 的设置可以写本书了,具体的使用去网上搜搜吧,很多的。
打开 rox 的 Options 。
引用Pinboard
-- Iconifled windows
---- Show iconifled windows [勾上]
---- Show per workspace [去掉]
---- Iconify to the [bottom-right]
---- going [horizontally]

Compatibility
-- Override window manager control of the pinboard and panels [去掉]
-- Pass all backdrop mouse clicks to window manager [勾上]
-- Blackbox root menus hack [去掉]
-- Panel is a 'dock' [去掉]

10. 配置 conky 和 rox 协同工作。
# vim ~/.conkyrc
找到下面两个选项,把值改成和下面所示的一样即可同时工作,不过还是有些小问题,在桌面上的conky 上点击右键菜单,菜单出不来,安装的朋友自己权衡一下吧。
最近 conky 已经被打入冷宫了,因为基本上看不到桌面的。
引用# Create own window instead of using desktop (required in nautilus)
own_window yes
# If own_window is yes, you may use type normal, desktop or override
own_window_type desktop

11. 定义笔记本上的多媒体键。
我 的 Compaq laptop 上有好几个多媒体键,分别是:呼出设置的多媒体程序、静音、音量+-、播放/暂停、停止、上一首、下一首,不过第一个热键一直就不可用,用 xev 也抓不到 keycode ,可以说基本上是废掉了,而其他的都是可以抓到 keycode 的,既然可以抓到,那就可以设置。
用 xev 抓到其他键的 keycode 的值为 静音(160)、音量+(176)、音量-(174)、播放/暂停(162)、停止(164)、上一首(144)、下一首(153)
给它们分别设置 keyname ,写到 ~/.Xmodmap 里。
引用keycode 162 = XF86AudioPlay
keycode 164 = XF86AudioStop
keycode 160 = XF86AudioMute
keycode 144 = XF86AudioPrev
keycode 153 = XF86AudioNext
keycode 176 = XF86AudioRaiseVolume
keycode 174 = XF86AudioLowerVolume
再看看我在 ~/.config/openbox/rc.xml 其中关于这几个键的设置,大家应该就明白了。
引用 <keybind key="XF86AudioLowerVolume">
<action name="Execute">
<execute>amixer -q set PCM 5%-</execute>
</action>
</keybind>
<keybind key="XF86AudioRaiseVolume">
<action name="Execute">
<execute>amixer -q set PCM 5%+</execute>
</action>
</keybind>
<keybind key="XF86AudioMute">
<action name="Execute">
<execute>amixer -q set PCM-2 toggle</execute>
</action>
</keybind>
总结: 程序跑得非常非常快,操作非常非常简便,容易上瘾。
参考链接:
http://roscidus.com/desktop/
http://fbpanel.sourceforge.net/
http://icculus.org/openbox/index.php/Main_Page
http://conky.sourceforge.net/
http://icculus.org/openbox/index.php/Help:Autostart
http://fbpanel.sourceforge.net/docs.html
http://icculus.org/openbox/index.php/Help:Menus
http://icculus.org/openbox/index.php/Help:Bindings
http://icculus.org/openbox/index.php/Help:Actions

PS: 我的配置文件,稍后整理后将会打包放上来。
rox + openbox + fbpanel + conky打造又快又稳的桌面