5分钟OpenBox配置指南
如果你厌倦了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/l和~/.config/l.前者可以由obconf更改, 后者可由obmenu更改
注意:
obconf不能⾃定义rc.xml中的快捷键部分, 这⾥需要⾃⾏添加
obconf: 虽然可改项很多, 但实际上并没有多少要改的,默认即可
obmenu: 在桌⾯右键时, 会弹出⼀个菜单. obmenu就是⾃定义这个菜单的
lxappearance: 相对来说, 这个可能更适合⼤多数⽤户, 选择窗⼝主题, ⿏标主题等等.
tint2conf: ⾃定义tint2⾯板
wbar-conf: ⾃定义wbar
6. 附⼏个配置
a. rc.xml中的”显⽰桌⾯”快捷键设置, 这⾥⽤的windows+d
1. <keybind key=”W-d”>
2. <action name=”ToggleShowDesktop”/>
3. </keybind>
b. r
1. <keybind key=”C-Print”>
2. <action name=”Execute”>
3. <command>scrot -s “/home/allblue/pictures/scrot/cut-%m.%d-%H%M%S.png”</command>
4. </action>
5. </keybind>
全屏载取, Print Screen
1. <keybind key=”Print”>
2. <action name=”Execute”>
3. <command>scrot “/home/allblue/pictures/scrot/screen-%m.%d-%H%M%S.png”</command>
4. </action>
5. </keybind>
c. rc.xml多媒体快捷键设置
⾳量放⼤
1. <keybind key=”XF86AudioRaiseVolume”>
2. <action name=”Execute”>
3. <command>amixer set Master 5%+ unmute</command>
4. </action>
5. </keybind>
静⾳
1. <keybind key=”XF86AudioMute”>
2. <action name=”Execute”>
3. <command>amixer set Master toggle</command>
4. </action>
5. </keybind>
打开主页
1. <keybind key=”XF86HomePage”>
2. <action name=”Execute”>
3. <command>firefox</command>
4. </action>
5. </keybind>
多媒体快捷键配的难点主要在于确定该键位的表⽰名称, ⼤多数名称都是通⽤的.
XF86AudioPlay 多媒体播放
XF86AudioPause 多媒体暂停
XF86AudioMute 静⾳
XF86AudioRaiseVolume 增⼤⾳量
XF86AudioLowerVolume 降低⾳量
XF86HomePage 浏览器打开主页
XF86Mail 邮件
XF86Sleep 休眠
XF86Calculator 计算器
d. ⼀个随机壁纸脚本, 有bash和python⼆种写法. 可以任选⼀个放到crontab⾥, 实现壁纸定时更换
bash写法
#!/bin/bash
#set -xbox shadow怎么设置
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 & ")
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论