Ubuntu/ArchLinux LXDE 下Conky的设置

来源:互联网 发布:java泛型详解 通配符 编辑:程序博客网 时间:2024/05/28 11:48

最近十分懒惰,只是在看文章,一直没来更新博客。今天有负罪感,所以就来涂两笔。
此前就一直见有人的Ubuntu桌面上面有个很漂亮的系统监视器,后来才知道叫Conky。去项目主页看了一下,觉得好复杂就懒得弄了。后来搜到有个Wizard软件可以傻瓜式配置Conky,但是又有人说不是很好用,有些特性调不出来,作罢。前天不知道怎么想的,突然又来劲了,于是开始啃Conky的Wiki,最后发现,其实Conky的配置非常简单。

Conky的默认配置文件.conkyrc内分两部分,配置和显示。配置部分内主要是编写Conky运行的一些基本参数,例如宽度、默认颜色、默认字体、刷新间隔等等。TEXT行之后进入显示部分的配置。显示的配置也很简单,无非就是“你写什么它显示什么”,“你换行它也换行”。然后在一些重要数值的位置,用Conky的变量填充进去就可以了。例如显示计算机的名称和内核版本:

TEXT
Hostname: $nodename
Kernel: $kernel

完了。$nodename和$kernel就是两个Conky的内置变量,前者显示机器名称,后者显示内核版本。全部的内置变量可以去Conky的Reference内查找。这里先贴一个我的Conky的截图:

见http://www.linuxidc.com/Linux/2011-02/32508.htm

对应的我的.conkyrc文件:

update_interval 1.0        # 更新时间间隔
double_buffer yes        
# 双缓存,解决Conky闪烁问题
use_xft yes                
# 自定义字体
xftfont DejaVu Sans Mono:size
=9

maximum_width 
300        # Conky最大宽度像素值
default_color gray        
# Conky默认颜色
alignment top_right        
# Conky默认位置
#draw_outline yes        # 绘制文本、图案的轮廓线

# 解决Conky和桌面图标的冲突问题
own_window yes
own_window_type override
own_window_hints undecorated
own_window_transparent yes

TEXT
# 系统信息总览
${color white}${font :bold:size
=12}[SYSTEM] $font$color $alignr$time
Hostname: $alignr $nodename
Kernel: $alignr $kernel
Uptime: $alignr $color $uptime
System 
load: $alignr $loadavg
Running Processes: $alignr $running_processes
/$processes
Running Threads: $alignr $running_threads
/$threads

# 显示当前四核CPU的频率、使用率的数值和示意图
${color white}${font :bold:size
=12}[PROCESSORS] $font$color ${execpi 8 sensors | grep 'Core 0' | cut --characters 14-21} ${execpi 8 sensors | grep 'Core 1' | cut --characters 14-21}
Core 1: ${freq_g 1}GHz (${cpu cpu1}%) ${alignr 100}${cpubar cpu1}
Core 
2: ${freq_g 2}GHz (${cpu cpu2}%) ${alignr 100}${cpubar cpu2}
#Core 3: ${freq_g 3}GHz (${cpu cpu3}%) ${alignr 100}${cpubar cpu3}
#Core 4: ${freq_g 4}GHz (${cpu cpu4}%) ${alignr 100}${cpubar cpu4}

# 列出排名前五的CPU消耗进程
${font :bold:size
=9}Name $alignc PID $alignr CPU $font
${top name 
1} $alignc ${top pid 1} $alignr ${top cpu 1}%
${top name 
2} $alignc ${top pid 2} $alignr ${top cpu 2}%
${top name 
3} $alignc ${top pid 3} $alignr ${top cpu 3}%
${top name 
4} $alignc ${top pid 4} $alignr ${top cpu 4}%
${top name 
5} $alignc ${top pid 5} $alignr ${top cpu 5}%

# 显示计算机当前内存的使用情况
${color white}${font :bold:size
=12}[MEMORY] $font:$color $mem/$memmax - $memperc%
${membar}

# 列出排名前五的内存消耗进程
${font :bold:size
=9}Name $alignc PID $alignr RAM $font
${top_mem name 
1} $alignc ${top_mem pid 1} $alignr ${top_mem mem 1}%
${top_mem name 
2} $alignc ${top_mem pid 2} $alignr ${top_mem mem 2}%
${top_mem name 
3} $alignc ${top_mem pid 3} $alignr ${top_mem mem 3}%
${top_mem name 
4} $alignc ${top_mem pid 4} $alignr ${top_mem mem 4}%
${top_mem name 
5} $alignc ${top_mem pid 5} $alignr ${top_mem mem 5}%

# 显示磁盘的使用情况,并且显示磁盘使用示意图
# 因为只分有两个区,所以只显示//home的磁盘使用情况
${color white}${font :bold:size
=12}[HDD] $font$color
/ $alignr ${fs_used /} of ${fs_size /} (${fs_used_perc /}%)
${fs_bar 
/}
/home $alignr ${fs_used /home} of ${fs_size /home} (${fs_used_perc /home}%)
${fs_bar 
/home}
swap $alignr $swap of $swapmax ($swapperc
%)
$swapbar

# 显示网络使用情况
${color white}${font :bold:size
=12}[NETWORK] $font$color
IP address: $alignr${addr eth0}
Download: $alignr ${downspeed eth0}
/s
Upload: $alignr ${upspeed eth0}
/s

# 天气预报
${color white}${font :bold:size
=12}[WEATHER] $font$color $alignr ${execi 1800 conkyForecast -l FRXX0141 -d CN},${execi 1800 conkyForecast -l FRXX0141 -d CO}
${font ConkyWeather:size
=50}${execi 1800 conkyForecast -l FRXX0141 -d WF}$alignc${font ConkyWind:size=50}${execi 1800 conkyForecast -l FRXX0141 -d BS}$font

# 当前日期的天气情况汇报
Condition: $alignr${execi 
1800 conkyForecast -l FRXX0141 -d CC}
Temperature: $alignr${execi 
1800 conkyForecast -l FRXX0141 -d HT}
Humidity: $alignr${execi 
1800 conkyForecast -l FRXX0141 -d HM}
Wind speed: $alignr${execi 
1800 conkyForecast -l FRXX0141 -d WS}
Sunrise: $alignr${execi 
1800 conkyForecast -l FRXX0141 -d SR}
Sunset: $alignr${execi 
1800 conkyForecast -l FRXX0141 -d SS}
Last update: $alignr${execi 
1800 conkyForecast -l FRXX0141 -d LF}

# 今后四天的天气情况汇报
${execi 
1800 conkyForecast -l FRXX0141 -d DW -1 -4 --9}
${font ConkyWeather:size
=30}${execi 1800 conkyForecast -l FRXX0141 -d WF -1 -4 -3}$font
${execi 
1800 conkyForecast -l FRXX0141 -d HT -1 -4 -9}
${execi 
1800 conkyForecast -l FRXX0141 -d LT -1 -4 -9}




这里唯一麻烦一点的就是气象预报的显示。首先你需要安装conkyForecast包:

sudo add-apt-repository ppa:conky-companions/ppasudo apt-get updatesudo apt-get install conkyforecast

然后把ConkyForecast目录下的配置文件样本复制到你自己的个人目录内,默认隐藏:

cp /usr/share/conkyforecast/conkyForecast.config ~/.conkyForecast.config

ConkyForecast的气象信息都是去www.weather.com这个网站上面读取的。先去这个网站申请一个帐号,然后去服务页面申请一个Weather XML Data Feed的服务,免费的。接着很快你就可以收到一个电子邮件,内容一大堆,最重要的是两串字符:Partner IDLicense Key。分别填充到XOAP_PARTNER_IDXOAP_LICENCE_KEY里面。

然后还需要你所在地区的代码,去气象网首页,在Find Weather的搜索栏里面输入你所要搜索气象的地区的名称,例如我搜杭州的,就是Hangzhou, China。如果网站成功搜到地区,则会显示该地区的气象,然后在浏览器里面的地址栏里面,就会显示该地区的代码:http://www.weather.com/weather/today/CHXX0044,杭州的代码就是CHXX0044,留着一会儿有用。

现在在你的.conkyrc文件里面需要插入气象的地方,插入:

${execi 1800 conkyForecast -l FRXX0141 -d WF}

1800是刷新事件,也就是30分钟刷新一次。频率不用太高,因为气象网站上面的气候是1小时刷新一次的。l参数后面跟的就是地区代码,d参数指定数据返回类型。如果需要查看所有数据类型,就在终端内输入:

conkyForecast --help

conkyForecast的气象图标实际是一种字体,所以想要显示对应天气的图标,只需要设置好字体就可以了,所以此前那条命令的完整格式是:

${font ConkyWeather:size=50}${execi 1800 conkyForecast -l FRXX0141 -d WF}$font

也就是使用50号的ConkyWeather字体来显示当前的天气情况,这样Conky就会显示对应的天气图标了。所需的字体文件都被安装在/usr/share/fonts/truetype/下。对字体的使用有一定的要求,并不是任何字体都适用于任何数据类型。按照作者自己的说法:

  1. ConkyWeather字体适用于WF类型;
  2. Arrows字体适用于BF类型,用于显示风向;
  3. ConkyWind,ConkyWindN和ConkyWindNESW适用于BF或者BS类型,也是显示风向;
  4. Moon Phases字体适用于MF类型,用来显示月相。

我的天气设置可以在上面的.conkyrc文件末尾处找到。不是很难理解的。
唯一需要注意的就是:启动Conky之后,你可以一边修改配置文件,一边直接观察效果。Conky可以检测到配置文件的变动,然后刷新显示。但是如果你在Conky启动以后安装了ConkyForecast,并且开始配置气象预报等等,你需要重启启动一次Conky,不然即便你的气象配置都是正确的也是无法正常显示气象信息的。

最后就是制作一个启动脚本,每次系统启动的时候,自动启动Conky了:

sleep 10killall conkyconky -c /home/shouyanbo/.conkyrcexit

我这里设置的是先等待10秒钟,等你的桌面加载完毕之后再启动Conky,将这个文件保存为start_conky.sh到你喜欢的目录,然后为其赋予执行权:

chmod u+x start_conky.sh

然后去你的桌面菜单:“系统” → “首选项” → “启动应用程序”,把这个脚本添加进去就可以了。试着“注销”,然后重新登录登录看下效果,一般来说是木有问题的了。

 

P.S. 一直很烦新版Ubuntu里面面板上那个Indicator的插件。就是可以同时聊天、收发邮件、泡虚拟社区的东东。三项功能集合在一起,本来是一个挺好的创意。但是聊天使用的是Empathy,邮件用的Evolution,虚拟社区那个是叫硅什么玩意儿的。最后那个没用过不好说,其他两个真的很垃圾。聊天不敌emesene,邮件不及雷鸟。还有那个至今不是很明白的Ubuntu Me还是什么的插件。好像是你的Ubuntu的ID也可以用来聊天或者如何,可以设置状态等等,一点用没有。所以以上两个东西可以直接毙掉,净化桌面:

sudo apt-get remove indicator-messagessudo apt-get remove indicator-mesudo apt-get remove evolutionsudo apt-get remove empathysudo apt-get autoremovekillall gnome-panel

搞定……


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 电脑没ip地址怎么办 电脑ip地址缺失怎么办 cos还原不了人物怎么办 执行局抓人十五天不放人怎么办 笔记本电脑键盘按键错乱怎么办 靠墙倒立上不去怎么办 医院多收钱了怎么办 学生总是转笔怎么办 吃错东西呕吐怎么办 手腕筋扭伤了怎么办 右膝盖内侧疼痛怎么办 膝盖关节腔积液怎么办 小孩玩游戏花钱怎么办 初三玩手机上瘾怎么办 无线网有感叹号怎么办 台式电脑网络感叹号怎么办 忘记发红包密码怎么办 电信诈骗被骗后怎么办 C小孩讨厌上学怎么办 军训来大姨妈怎么办 夏天军训来月经怎么办 军训遇到大姨妈怎么办 长春市图书馆读者证怎么办 济宁图书馆怎么办读者卡 海南省图书馆读者证怎么办 小孩子特别能吃怎么办 小孩吃不下去药怎么办 小孩不肯去上学怎么办 初中没有团员证怎么办 入团申请书丢了怎么办 刚成立单位社保怎么办 老年人耳鸣怎么办小妙招 老人血压高200怎么办 老人晕车后难受怎么办 老人头晕心里慌怎么办 老人憋的慌怎么办 老人厌食没胃口怎么办 老年人心里整天疑心病怎么办 一个人疑心太重怎么办 我疑心病很重怎么办 老人疑心病太重怎么办