从开始用 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打造又快又稳的桌面的更多相关文章

  1. 轻量级桌面 openbox + tint2 + conky + stalonetray + pcmanfm + xcompmgr

    openbox+tint2+pnmixer+conky=轻量级archlinux桌面环境设置备忘 缘起 机器上的Ubuntu 12.04有一段时间没有使用了,最近在用的时候发现频繁死机的情况,开始以为 ...

  2. 即席查询(Ad Hoc)如何做到又快又稳?

    数字化与数字生态建设,是当前所有企业成长发展的必经之路.随着"加强新型基础设施建设"第一次被写入政府工作报告,5G.人工智能.工业互联网.智慧城市等新型基建彻底激发了数字的价值. ...

  3. CODING Pages 服务全面升级,更快更稳更可靠!

    尊敬的 CODING 用户: 您好! 由于原上游服务商无法满足 CODING Pages 日益增长的用户量以及访问速度需求,同时提供的 DDoS 解决方案无法支撑大型 DDoS 攻击,给 CODING ...

  4. [转载]打造自己喜欢的Linux桌面----archlinux

    原文地址:打造自己喜欢的Linux桌面----archlinux作者:三尺椴 打造自己的Linux桌面----Archlinux 2011-01-16  文/s_cd ( 常用桌面组合:Archlin ...

  5. 【linux】自定义配置debian+openbox

    openbox确实是好东西阿,小巧,不开iceweasel时内存总使用量不到200M,功能又强大,不过限于我是菜鸟,openbox再强大也有限...debian装openbox是及其简单的,不过为了使 ...

  6. CODING DevOps 助力中化信息打造新一代研效平台,驱动“线上中化”新未来

    中化信息技术有限公司,简称"中化信息",是世界 500 强企业中国中化控股有限责任公司(简称"中国中化")的全资直属公司,依托于中国中化的信息化建设实践,建立起 ...

  7. 云上领跑,快人一步:华为云抢先发布Redis5.0

    12月17日,华为云在DCS2.0的基础上,快人一步,抢先推出了新的Redis 5.0产品,这是一个崭新的突破.目前国内在缓存领域的发展普遍停留在Redis4.0阶段,华为云率先发布了Redis5.0 ...

  8. Linux用来抗衡Win的那些桌面环境

    作为一个 Linux 的爱好者,参加了 9 月 22 日 Linux Deepin 在北京举行的用户与开发者大会(给大家一个链接).名为参加会议,实为打酱油.但 Linux Deepin 团队的一些理 ...

  9. Qcon会议之所见所想

    作为普通码农一枚,Qcon是俺参与过的最高级的技术大会了.大会共历时三天,因为俺第二天就得赶火车休个五一大长假,所以只参加了第一天4/25号的会议(其他俩天自然有其他同事会去观摩),不过第一天的会议有 ...

随机推荐

  1. SCRIPT5009: “Sys”未定义 部署.net ajax 解决方案

    今天在部署asp.net ajax 的时候发现部署服务器的时候,ajax刷新不正确,开始以为是System.Web.Extensions没有引用到本地,baidu一圈发现(最近google上不了郁闷~ ...

  2. Centos7下yum安装配置nginx与php

    实现LNMP环境搭建. 开始安装Nginx和PHP-FPM之前,首先卸载系统中以前安装的Apache和PHP保证安装不会冲突.用root登录输入下面的命令: yum remve httpd* php* ...

  3. Python实现爬虫设置代理IP和伪装成浏览器的方法(转载)

    https://www.jb51.net/article/139587.htm chrome_options = webdriver.ChromeOptions() chrome_options.ad ...

  4. android 桌面小工具(Widget)开发教程

    刚学做了哥Widget,感觉不错哦,先来秀下效果(用朋友手机截的图) 这个Widget会每隔5秒钟自动切换内容和图片,图片最好使用小图,大图会导致你手机桌面(UI)线程卡顿 教程开始: 1.首先创建一 ...

  5. JavaSE(十)之Map总结 (转)

    http://www.cnblogs.com/zhangyinhua/p/7545979.html 阅读目录(Content) 一.Map接口 1.1.为什么Collection不能满足集合的所有功能 ...

  6. 小议IE10下的DrawToBitmap方法

    在完成博文“PS网页设计教程XXIV——从头设计一个漂亮的网站”后. 出于习惯,打开之前“利用Webbrowser类实现超长网页的截屏的实现(解决报错不能截取的难题)”中的代码的程序,截取博文作为资料 ...

  7. 一个WEB应用的开发流程

    转载:http://www.51testing.com/html/56/n-3721856.html 先说项目开发过程中团队人员的分工协作. 一.人员安排 毕业至今的大部分项目都是独立完成,虽然也有和 ...

  8. JavaScript 从闭包可以做什么开始,将有助于理解闭包

    本文内容 函数内部访问全局变量 函数外部不能直接访问局部变量 函数外部访问局部变量 保护私有成员 持久性 模块化 抽象性 闭包是 JavaScript 的重要特性,非常强大,可用于执行复杂的计算,可并 ...

  9. Python操作MongoDB(PyMongo模块的使用)

    #!/usr/bin/env python #coding:utf-8 # Author:   --<qingfengkuyu> # Purpose: MongoDB的使用 # Creat ...

  10. 微软BI 之SSAS 系列 - 多维数据集中度量值设计时的聚合函数 (累加性_半累加性和非累加性)

    在 SSAS 系列 - 实现第一个 Cube 以及角色扮演维度,度量值格式化和计算成员的创建 中主要是通过已存在的维度和事实数据创建了一个多维数据集,并同时解释了 Role-Playing Dimen ...