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

摘要:
Openbox+tint2+pnmixer+conky=轻量级archlinux桌面环境设置注意:机器上的Ubuntu 12.04已经有一段时间没有使用了。最近,我在使用它时发现了频繁的崩溃。起初,我认为这是团结的原因,所以我将它改为gnome3。然而,好景不长,随后频繁坠毁。网络配置使用wicd替换默认的netctlsystemctlstopnetctlsystemctldisableetctlpacman Swicdwicd gtksystemctlstarttwitdsystemctlenablewicd,并在~/中添加wicd-gtk-t&图形界面图形界面。config/openbox/autostart。我选择了轻量级的开箱。Pacman Sopenbox之后是一系列用于openbox配置、openbox主题和设置工具Pacman Sopenbox主题的工具confopenbox右键菜单。我选择了AUR的obmenu生成器,其动态菜单功能特别方便,安装新软件后无需重置右键菜单。
openbox+tint2+pnmixer+conky=轻量级archlinux桌面环境设置备忘
缘起
机器上的Ubuntu 12.04有一段时间没有使用了,最近在用的时候发现频繁死机的情况,开始以为是unity的原因,于是换成了gnome3,然而好景不长很快又频繁死机了。作为一个懒得折腾的人,还是重装系统最省事了。想来想去,还是装了archlinux。
设置
安装过程不必细说,arch的wiki上有详细的说明。这里只是简单的记录下配置过程。
网络配置
使用wicd替换了默认的netctl

systemctl stop netctl
systemctl disable netctl
pacman -S wicd wicd-gtk
systemctl start wicd
systemctl enable wicd

并在~/.config/openbox/autostart中加入wicd-gtk -t &
图形界面
图形界面我选择了轻量级的openbox。
pacman -S openbox
然后是openbox配置的一系列工具
openbox主题及设置工具
pacman -S openbox-themes obconf
openbox右键菜单我选用了AUR的obmenu-generator,其动态菜单(pipe menu)功能尤其方便,在安装了新的软件后也无需重新设置右键菜单。
yaourt -S obmenu-generator
快捷键编辑工具obkey和菜单编辑工具obmenu
pacman -S obkey obmenu
安装轻量级登录管理器slim
pacman -S slim
桌面环境
面板使用了tint2,在启动脚本中添加tint2 &
yaourt -S tint2-svn tint2-themes tint2wizard
尽管安装了tint2的设置工具,我目前使用的依然是tint2的默认主题,因为基本上能满足我的需求:)。
其他的面板工具可以尝试下fbpanel、wbar、xfce4-panel等,总有一款panel适合你。
音量控制使用了pnmixer,在启动脚本中加入pnmixer &
yaourt -S pnmixer
轻量级监控工具conky及conky配置生成工具conky-colors
yaourt -S conky conky-colors
在启动脚本中加入/usr/share/conkycolors/bin/conkyStart &
壁纸工具使用了nittrogen
pacman -S nittrogen
选择壁纸后在启动脚本中加入nitrogen --restore &
阴影工具使用了compton-git
yaourt -S compton-git
在启动脚本中加入compton -cC -f -i 1.0 -e 1.0 -o 1.0 -r 6 -l -9 -t -9 -I 0.05 -O 0.05 -D 2 -G -b &
其他工具
文件管理器 pacman -S pcmanfm
看图工具 pacman -S geeqie gpicview
图片编辑 pacman -S gimp
浏览器 pacman -S chromium
输入法 pacman -S fcitx fcitx-googlepinyin
在~/.xinitrc中加入

export LANG=zhCN.UTF-8
export LCALL="zhCN.UTF-8"
export XMODIFIERS=@im=fcitx
export GTKIMMODULE=fcitx
export QTIM_MODULE=fcitx

并在启动脚本中加入fcitx &
文字编辑工具 yaourt -S kingsoft-office
pdf阅读器 yaourt -S mupdf apvlv
屏幕保护程序 yaourt -S xscreensaver


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

轻量级桌面果然很难弄..还好我之前是用gnome的比较起来会简单一点
首先是安装需要的软件了
sudo aptitude install openbox obconf obmenu conky stalonetray pcmanfm xcompmgr 
tint2我是编译安装对的
首先到tint2 google code下载源码 
http://code.google.com/p/tint2/
然后
 
cd /home/wdstudio/Desktop/tint2-0.9
./configure  
make
sudo make install
安装完毕了
暂时需要的软件就有了
logout在登录时选则openbox-session
不用在~/.xinitrc里加入exec openbox-session这么麻烦反正我们有gdm...
到这里就进入openbox了,看起来很糟糕
首先先调用pcmanfm , 是用来代替nautilus的,虽然我很喜欢nautilus 不过貌似nautilus 和openbox经常打架就换轻量级的pcmanfm
恩,让pcmanfm每次都启动的话要在~/.config/openbox/autostart.sh中添加
( sleep 2 && pcmanfm -d ) &
忘记哪里找来的语句了,和大多数人都不一样... 记得sleep 2 &&是让openbox和要启动的程序有一些缓冲时间 pcmanfm -d 则是让pcmanfm在后台运行 每行结束都要加上 &
各位自己去折腾一下pcmanfm把,壁纸等都能用他设定了
# update-mime-database /usr/share/mime
# update-desktop-database
这两行很重要,不然会丢失所有的文件关联
这个时候的openbox还很简略没有成型
不过没关系从终端运行obmenu就可以定制openbox的右键了
obconf是openbox的设定可以换主题等
sudo aptitude install openbox-themes安装主题,当然gnome-look等地方还有很多好看的主题
 
# Run the system-wide support stuff
. $GLOBALAUTOSTART
# feh --bg-scale /home/wdstudio/Pictures/Wallpaper/wallpaper_0150.jpg &
#xcompmgr
if which xcompmgr > /dev/null; then
xcompmgr -Ss -n -Cc -fF -I-10 -O-10 -D1 -t-3 -l-4 -r4 &
fi
(sleep 2 && conky ) &
(sleep 2 && /usr/local/bin/tint2 ) &
(sleep 2 && pcmanfm -d ) &
# (sleep 2 && nautilus --no-desktop ) &
( sleep 2 && stalonetray ) &
#( sleep 2 && /usr/bin/dmenu_run & ) &
( sleep 2 && dropbox ) &
( sleep 2 && gnote ) &
这是我的autostart.sh

关于openbox的快捷键就要手动编辑了
vi ~/.config/openbox/rc.xml
找到<keyboard>部分
快捷键的编写其实很见到找到规律就好了
最长见的有
<keybind key="KEY">
<action name="Execute"
<execute>command</execute>
</action>
</keybind>
KEY代表你要的快捷键
command就是指令了
比如
    <keybind key="A-t">
      <action name="Execute">
        <execute>gnome-terminal</execute>
      </action>
    </keybind>
    <keybind key="W-e">
      <action name="Execute">
        <execute>pcmanfm ~</execute>
      </action>
    </keybind>
一个是terminal的一个是pcmanfm的
具体可以看http://openbox.org/wiki/Help:Actions
之后就是tint2了在上面的autostart.sh里面已经看到tint2自动启动了
tint2的配置文件在./config/tint2/tint2rc
怎么配置打架自己着墨吧

autostart.sh里面的xcompmgr -Ss -n -Cc -fF -I-10 -O-10 -D1 -t-3 -l-4 -r4 &
就是调用xcompmgr让窗口出现阴影效果,关于xcompmgr的具体我自己都不清楚,等下去google了

conky就不用多说了, ( sleep 2 && conky ) & 搞定,如此简单
附上我的配置
background yes
# Use Xft?
use_xft yes
xftfont Comic Sans MS:size=8

use_spacer top_right

# Update interval in seconds
update_interval 1

# This is the number of times Conky will update before quitting.
# Set to zero to run forever.
total_run_times 0

# Create own window instead of using desktop (required in nautilus)
own_window  yes
own_window_transparent yes
own_window_type widget
own_window_hints undecorate,sticky,skip_taskbar,skip_pager 

# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes

# Minimum size of text area
#minimum_size 280 5

maximum_width 150

# Draw shades?
draw_shades no

# Draw outlines?
draw_outline no

# Draw borders around text
draw_borders no

# Stippled borders?
stippled_borders 0

# border margins
border_margin 5

# border width
border_width 0

# Default colors and also border colors
default_color 4d4d4d
#default_shade_color white
#default_outline_color black
own_window_colour 262626

# Text alignment, other possible values are commented
#alignment top_left
alignment top_right
#alignment bottom_left
#alignment bottom_right

# Gap between borders of screen and text
# same thing as passing -x at command line
gap_x 5
gap_y 5

# Subtract file system buffers from used memory?
no_buffers yes

# set to yes if you want all text to be in uppercase
uppercase no

# number of cpu samples to average
# set to 1 to disable averaging
cpu_avg_samples 2

# number of net samples to average
# set to 1 to disable averaging
net_avg_samples 2

# Force UTF8? note that UTF8 support required XFT
override_utf8_locale yes

# Add spaces to keep things from moving about?  This only affects certain objects.
use_spacer yes

TEXT
${font OpenLogos:size=26}      B
${color 8F8F8F}${alignc 23}${font DotMatrix:size=16}      ${time %k:%M}
${font}${color EE6363}${alignc}${voffset -10}${time %B} ${time %Y}

${color 7C96B0}${font DejaVu Sans Mono:size=6}${execpi 300 DJS=`date +%_d`; cal | sed '1d' | sed '/./!d' | sed 's/$/                     /' | fold -w 21 | sed -n '/^.{21}/p' | sed 's/^/${alignc} /' | sed /" $DJS "/s/" $DJS "/" "'${color 98AE68}'"$DJS"'${color 8F8F8F}'" "/}${font}

${color 7C96B0}Kernel:${color 8F8F8F}${alignr}$kernel
${color 7C96B0}UpTime:${color 8F8F8F}${alignr}$uptime
${color 7C96B0}CPU : ${color 8F8F8F}${alignr}AMD X4 630
${color 7C96B0}Core One:${color 8F8F8F}${alignr}${cpu cpu1}% ${color EE6363}
#${color 7C96B0}Core 1 temp:${color EE6363}${alignr}${execi 20 sensors it8718-isa-0290 |grep temp1 |cut -c15-16}°C
${color 262626}${cpugraph cpu1 20,85 262626 1E1E1E} 
${color 7C96B0}Core Two:${color 8F8F8F}${alignr}${cpu cpu2}% ${color EE6363}
#${color 7C96B0}Core 2 temp:${color EE6363}${alignr}${execi 20 sensors it8718-isa-0290 |grep temp2 |cut -c15-16}°C
${color 262626}${cpugraph cpu2 20,85 262626 1E1E1E} 
${color 7C96B0}Ram:${color 8F8F8F}${alignr}$mem
${color 1A1A1A}${membar 3,85}

#${color 7C96B0}Public Ip:${color EE6363}${alignr}${execi 1 ~/.scripts/ip.sh}  ${color EE6363}|${color}  ${color EE6363}
${color 7C96B0}Public Ip:  ${execi 3600 wget -O - http://whatismyip.org/ | tail}
${color 98AE68}${font PizzaDude Bullets:size=10}N${font}${color EE6363}${alignr}${upspeed eth0}KB/s
${color 262626}${upspeedgraph eth0 20,85 1E1E1E 1A1A1A}
${color 7C96B0}Total: ${color 8F8F8F}${totalup eth0}
${color 98AE68}${font PizzaDude Bullets:size=10}T${font}${color EE6363}${alignr}${downspeed eth0}KB/s
${color 262626}${downspeedgraph eth0 20,85 1E1E1E 1A1A1A}
${color 7C96B0}Total: ${color 8F8F8F}${totaldown eth0}

${color 98AE68}Disk IO:${color EE6363} ${alignr 4}$diskio
#${color 7C96B0}Main HardDisk Temp:${color EE6363}${alignr}${execi 300 nc localhost 7634 | cut -c23-24;} °C
${color 262626}${diskiograph 20,85 1E1E1E 1A1A1A}
${color 7C96B0}WDSTUDIO:${color 8F8F8F}${alignr}${fs_free /home/wdstudio/}
${color 1A1A1A}${fs_bar 3,85 /home/wdstudio/}
${color 7C96B0}File:${color 8F8F8F}${alignr}${fs_free /media/File/}
${color 1A1A1A}${fs_bar 3,85 /media/File/}
${color 7C96B0}Data:${color 8F8F8F}${alignr}${fs_free /media/Data/}
${color 1A1A1A}${fs_bar 3,85 /media/Data/}
${color 7C96B0}eMule:${color 8F8F8F}${alignr}${fs_free /media/eMule/}
${color 1A1A1A}${fs_bar 3,85 /media/eMule/}

${color 7C96B0}PROCESSES ${hr 2}
${color 7C96B0}NAME             ${goto 110}PID${goto 138}CPU%${goto 175}MEM%
${color 7C96B0}${top name 1}    ${goto 105}${top pid 1}${goto 138}${top cpu 1}${goto 175}${top mem 1}
${color 7C96B0}${top name 2}    ${goto 105}${top pid 2}${goto 138}${top cpu 2}${goto 175}${top mem 2}
${color 7C96B0}${top name 3}    ${goto 105}${top pid 3}${goto 138}${top cpu 3}${goto 175}${top mem 3}
${color 7C96B0}${top name 4}    ${goto 105}${top pid 4}${goto 138}${top cpu 4}${goto 175}${top mem 4}
${color 7C96B0}${top name 5}    ${goto 105}${top pid 5}${goto 138}${top cpu 5}${goto 175}${top mem 5}

#quod libet ${hr 2}

# ${voffset 4}${alignc 35}${font Buttons and Switches JL:size=26}wd${font}
#${voffset 7}${execi 7 quodlibet --print-playing '<title>'}
#${alignc 35} - ${execi 7 quodlibet --print-playing '<artist>'}

#Banshee ${hr 2}
#${voffset 7}${exec banshee-1 --query-title}
#${alignc 35}  -- ${exec banshee-1 --query-artist}
#${exec banshee-1 --query-track-number}
# ${exec banshee-1 --query-album}
#${exec banshee-1 --query-position}
我的.conkyrc坑坑洼洼的,大家不要介意
stalonetray是系统托盘,既然不在gnome了就没有gnome-panel了
用stalonetray来代替,配置文件在~/.stalonetrayrc
第一件是就是透明
transparent true
geometry 124x24+3-3
icon_gravity NW
window_layer bottom 
sticky true
这是我的配置

继续使用gtk主题和图标是我遇到最大的麻烦了,应该是安装lxappearance,gtk-chtheme就能解决问题的,可是我的图标被固定了不能换,自己写.gtkrc-2.0也不可以.gtkrc.mine也不可以
我就想到更简单的方法了,直接调用gnome-panel来换
$ gnone-panel
换好了在kill掉
$ pkill gnome-panel

以前习惯用gnome-do了,换到openbox当然什么都要light
那就上dmenu , 这个确实折腾了很长时间
( sleep 2 && dmenu_run & ) & 细心的人注意到了,dmenu_run 后面还有一个 &
配合  
 <keybind key="W-space">
      <action name="Execute">
        <command>dmenu_run</command>
      </action>
    </keybind>
刚刚好达到gnome-do的效果
忘记说了W代表Super,A代表Alt,C代表Ctrl,小的字母才是A-Z

不能忘记gnome下的Alt+F2 ,代替他的是gmrun
快捷键怎么写大家应该都知道了把

还有一个很重要的,那就是关于openbox的关机等脚本
感谢tony3322提供的脚本
cd /usr/local/bin
vi powerdown

#!/bin/bash
ans=$(zenity --list --title "Make your choice" --text "What should I do?"
--radiolist --column "Choice" --column "Action"
reboot reboot logout logout poweroff poweroff);
echo $ans
case $ans in
'reboot')
echo "reboot"
sudo reboot
;;
'logout')
echo "logout"
killall openbox
;;
'poweroff')
echo "poweroff"
sudo poweroff
;;
esac
保存起来
sudo chmod a+x powerdown
sudo visudo
添加
%users ALL=NOPASSWD: /sbin/halt
ALL ALL=NOPASSWD:/sbin/poweroff
ALL ALL=NOPASSWD:/sbin/reboot


在obmenu里面添加

差不多就是这样了
以后想到什么在添加把
最后附上截图





 

免责声明:文章转载自《轻量级桌面 openbox + tint2 + conky + stalonetray + pcmanfm + xcompmgr》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇win7远程连接ubuntu,出现灰屏解决方法创建指定python版本的虚拟环境下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PetaPoco轻量级ORM框架

PetaPoco 是一个开源轻量级ORM,够小,够快,单文件   在GitHub上有很高的人气 1377星,几年来作者一直在更新   当前版本6.0.317 - Netstandard 2.0(同时支持.net core、.net framework4.0+),也可下载单独的平台版本   github: https://github.com/Collabo...

轻量级ORM框架 第一篇:Dapper

为什么选择Dapper,性能优越,各大网站的对比图,在超过500次poco serialization的过程中所表现的性能,Dapper是第二名 支持多数据库的本质是因为Dapper是对IDBConnection接口进行了方法扩展,比如你看到的SqlMapper.cs,一旦你这样做了,我们也知道, SqlConnection,MysqlConnectio...

docsify制作在线说明文档的轻量级神器

在网上发现了一个使用html ,处理加载md文件,极其简单便可以制作出漂亮的在线说明文档————神器docsify。 GIThub地址:https://github.com/QingWei-Li/docsify/ 中文文档地址(就是一个demo):https://docsify.js.org/#/zh-cn/ 这个是基于vue2.0的,下面记录一下最简单最...

基于java.util.logging实现轻量级日志记录库(增加根据当前类class初始化,修复线程池模型(javaEE)下的堆栈轨迹顺序与当前调用方法不一致问题)

前言: 本章介绍自己写的基于java.util.logging的轻量级日志记录库(baseLog)。 该版本的日志记录库犹如其名,baseLog,是个实现日志记录基本功能的小库,适合小型项目使用,方便快捷,简单实用,没有使用缓冲区,日志写出操作都是同步操作。 很早就想过要写两个日志记录器,一个用于大项目(logGuide),解决多线程模型下的日志记录并发性...

Java虚拟机:十八、Java对象大小、对象内存布局及锁状态变化

一个对象占多少字节? 关于对象的大小,对于C/C++来说,都是有sizeof函数可以直接获取的,但是Java似乎没有这样的方法。不过还好,在JDK1.5之后引入了Instrumentation类,这个类提供了计算对象内存占用量的方法。至于具体Instrumentation类怎么用就不说了,可以参看这篇文章如何精确地测量java对象的大小。 不过有一点不同的...

Unity3D游戏轻量级xlua热修复框架

一  这是什么东西 前阵子刚刚集成xlua到项目,目的只有一个:对线上游戏C#逻辑有Bug的地方执行修复,通过考察xlua和tolua,最终选择了xlua,很大部分原因是因为项目已经到了后期,线上版本迭代了好几次,所以引入Lua的目的不是为了开发新版本模块。xlua在我们的这种情况下很是适用,如xlua作者所说,用C#开发,用lua热更,xlua这套框架为...