Linux - 行者无疆 始于足下 - 行走,思考,在路上

conky

Conky is a free, light-weight system monitor for X, that displays any information on your desktop. Conky is licensed under the GPL and runs on Linux and BSD.

Features

Conky has more than 300 built in objects, including support for:

  • a plethora of OS stats (uname, uptime, CPU usage, mem usage, disk usage, "top" like process stats, and network monitoring, just to name a few)
  • built in IMAP and POP3 support
  • built in support for many popular music players (MPD, XMMS2, BMPx, Audacious)
  • can be extended using built in Lua support, or any of your own scripts and programs (tell me more!)
  • built in Imlib2 and Cairo bindings for arbitrary drawing with Lua (tell me more!)

... and much much more.

Conky can display this info either as text, or using simple progress bars and graph widgets, with different fonts and colours.

Installation

In gentoo, it is very simple to install a software, just emerge what you want. But before you really do it, try -pv options to see what will be installed and make your own choice:

Calculating dependencies... done!
[ebuild   R   ] app-admin/conky-1.7.2-r2  USE="X alsa apcupsd imlib portmon truetype vim-syntax weather-xoap -audacious -curl -debug -eve -hddtemp -iostats -lua -lua-cairo -lua-imlib -math -moc -mpd -nano-syntax -nvidia -rss -thinkpad -weather-metar -wifi" 0 kB

For example, if you use moc as a console music player you must add moc USE. What is  USE? Refer to gentoo handbook.

For archlinux, just type "pacman -S conky" and for ubuntu and deb, maybe "apt-get install conky". Refer to your system handbook.

Cofiguration

Usually there is a sample configuration file located in /etc. My file is /etc/conky/conky.conf, just copy this file into your home diretory and rename it to .conkyrc:

sudo cp /etc/conky/conky.conf ~/.conkyrc

then let conky startup with the system.  If you use startx, add this line to your ~/.xinitrc

conky -d 

-d means conky would run as a daemon process.

If you use a desktop environment such as gnome or kde, use the graphical tools, easy job.

And if you feel disappointed about the ugly default configuration, you can configure it by yourself. First you should refer to the man page to know some details about the configuration grammer and configuration choices. Then, I think you'd better refer to google to download a sample .conkyrc and modify it. Here is a sample configuration file:

########## basic configuration ##########
use_spacer right
use_xft yes
font Comic Sans MS:size=9
xftfont Comic Sans MS:size=9
override_utf8_locale yes
update_interval 1.0
own_window no
own_window_type normal
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
double_buffer yes
minimum_size 206 5
maximum_width 400
draw_shades yes
draw_outline yes
draw_borders no
draw_graph_borders yes
default_color 00ffe1
default_shade_color ffffff
default_outline_color 000000
alignment top_right
gap_x 10
gap_y 10
cpu_avg_samples 2
uppercase no # set to yes if you want all text to be in uppercase

# predefined color for title
color0 5511dd
# predefined color for hr line
color1 ffd700
# predefined color for graph_bar
color2 ff00ff
# predefined color for any use
color5 ffaa00
color6 b5ff00
########## basic configuration end ##########


TEXT
########## time ##########

${font Comic Sans MS:style=Bold:pixelsize=40}${alignc}${time %H:%M:%S}${font}
${color1}${stippled_hr}${font}$color
#
########## system information ##########
#
OS: $alignr${color}$sysname $kernel${color}
Uptime: $alignr$uptime
Processes:${alignr}$processes ($running_processes running)
#
########## CPU information ##########
#
${cpugraph cpu1 00FF00 FF0000}${cpugraph cpu1}${alignr}
${cpugraph cpu2 0000FF 00FF00}${cpugraph cpu2}${alignr}
# CPU frequency information
# ${color #00FFE1}CPU Frequency: ${color #00ff00}${alignr}${freq 0} MHz
#
########## processes information ##########
#
${font Comic Sans MS:size=14}${color0}Processes ${color1}${stippled_hr 1}$font$color
${color}Highest CPU $alignr CPU% MEM%${color5}
${top name 1}$alignr${top cpu 1}   ${top mem 1}
${top name 2}$alignr${top cpu 2}   ${top mem 2}
${top name 3}$alignr${top cpu 3}   ${top mem 3}
${top name 4}$alignr${top cpu 4}   ${top mem 4}
${top name 5}$alignr${top cpu 5}   ${top mem 5}
${color}Highest MEM $alignr CPU% MEM%${color6}
${top_mem name 1}$alignr${top_mem cpu 1}   ${top_mem mem 1}
${top_mem name 2}$alignr${top_mem cpu 2}   ${top_mem mem 2}
${top_mem name 3}$alignr${top_mem cpu 3}   ${top_mem mem 3}
#
########## ram and disk usage ##########
#
${font Comic Sans MS:size=14}${color0}RAM and Disk ${color1}${stippled_hr 1}$font$color
${color}RAM:${color #4169e1}$alignr ${color}$mem ${color #98c2c7}/${color}$memmax${color #4169e1}${color #FF3500} $memperc%
${color2}${membar}
${color}Root: ${color}${alignr}${fs_free /} / ${fs_size /}
${color2}${fs_bar 4 /}
${color}Home: ${color}${alignr}${fs_free /home} / ${fs_size /home}
${color2}${fs_bar 4 /home}
#
########## networking information ##########
#
${font Comic Sans MS:regular:size=14}${color0}NetWorking ${color1}${stippled_hr 1}$font$color
${color}Down:${color} ${downspeed eth0} k/s ${alignr}${color #00FFE1}Up:${color} ${upspeed eth0} k/s
${downspeedgraph eth0 20,115 556B2F 9ACD32}${alignr}${upspeedgraph eth0 20,115 556B2F 9ACD32}
${color}Totat: ${totaldown eth0}${alignr} Total: ${totalup eth0}$color

The grammer is simple, the first part is some basic settings, the second part is the content to show. But the grammer itself is not elegant, to second part is similar to markup language, ${font}${color}Something${color}${font}, just like this, but not so good.

And the following is the result:

Not bad. Enjoy it.

kernel-mode-setting

archlinux的好处就是软件新,可以用上很多很强很酷的功能。譬如tex,在ubuntu 9.10中依旧是texlive2007,archlinux中却是与时俱进,texlive09了,而且自动集成了来自于CTex的xeCJK,最大的好处就是可以非常方便地处理中文,再也不用配置字体了。自此以后彻底告别了latex+cjk的传统解决方案。

最近的2.6.31的linux kernel有一个叫做kernel-mode-setting的功能,大概意思是把很多控制显卡的东西直接放到kernel-space里面,以求得更好地图形加速效果,也是非常酷的功能,启用这项功能可以告别复杂的xorg.conf。但是这项功能尚处于实验阶段,启用以后有可能造成更大的冲突和糟糕的显卡性能。因此前些日子装好archlinux时我就禁用了这项功能,具体可以参考这篇文章。但是今天更新了一下系统,于是系统就出现了各种各样诡异的问题。譬如某些窗口在最大化的时候系统会死机,某些时候切换窗口管理器的时候也会死机,kde下面点击右键菜单就自动注销等等,搞的我彻底崩溃。开始以为是桌面环境的原因,于是换了桌面环境,分别尝试了两个轻量级的桌面环境:xfce4lxde,但是问题依然没有解决。后来我忽然想起来那个kernel-mode-setting的问题,于是又照着archlinux wiki的文章启用了kernel-mode-setting。这下好了。不仅解决了问题,还意外地解决了某些opengl程序闪屏的问题。具体了解kernel-mode-setting请参考以下链接:

总体来说,kernel-mode-setting的功能还是很赞的。

令一个头疼的问题是emacs与ibus冲突的问题,google方案五花八门,各有千秋,最后找到一种方案,暂时解决的问题,虽然我也不知道是怎么回事。具体方法是,在主目录的.xprofile中加入: 

export LC_CTYPE=zh_CN.UTF-8

linux的输入法依旧是linux中文化的一大软肋。大体来说三种:scim, fcitx, ibus。scim基本算已经过时,而且经常会莫名其妙地和firefox,emacs等软件冲突,无法调用,异常麻烦。fcitx中国特色,受到很多人的追捧和喜爱。ibus是新一代输入法平台,算这里面最有前途的了。

linux用了也快小一年了。期间遇到过各种匪夷所思的问题,但依然坚持了下来,说来说去,作为一个计算机系的学生,不了解unix,不懂得bash,不懂得make,不会用emacs或者vim,没听说过latex,毕竟有些不像话的。有时候也烦,也怀念windows下面那种鼠标点点万事搞定的操作方式。但是我实在受不了windows的低效,受不了各种各样的破解注册杀毒激活,受不了不经意间弹出的广告,受不了动辄上G的应用程序,受不了乱七八糟的目录安排。总而言之,我患上linux偏执症了。

其实想想有时候这样折腾来折腾去也挺费时间的。倒不如省下时间去补补自己的功课更好。可是问题来了,你不去解决放任不管,心里面就痒痒的,总要想方设法将它搞定,才心安理得。对各种软件也非常感兴趣赶时髦,各种桌面环境都去尝试,虽然经常用的只有一个,经常用的软件也只有那么几种而已。archlinux,总能满足你这方面的要求。或许有一天,当我“看破红尘”,就不会再折腾了。emacs, firefox,gnutools,就这么几个万古长青的软件,弹指一挥。

好了,不聊了。睡吧。

ArchLinux下安装VirtualBox的问题

出现了小问题,参见这篇文章

还有两个十分十分诡异的问题。

一个是在编译XeTeX+xeCJK文档时,如果是普通用户,就会卡住。如果是root用户,则一帆风顺。我去看了下文件权限,去改了下,但是也没有效果。连sudo编译也不行。太诡异了。

二是音乐播放的问题。gdm登入的时候是有声音的,但是音乐播放器就是放不出声音,包括rhythmbox,exaile。而我自己装的realplayer有声音,mplayer也有声音。在kde桌面环境下,一首歌的前二十秒通常是没有声音的,忽然之间就会来了声音。太tn的诡异了。

arch的软件库比ubuntu的要小很多。我想要的dwww,emacs-jde都没有官方支持。至于传说中的AUR,鉴于浙大玉泉故步自封的内网环境,我还没有尝试过。希望能够带来惊喜。

三是系统时间的问题。我的系统时间总是错误。查验过BIOS,BIOS的时间是正确的。但是系统时间却总是错误。每次改过来,重启之后依然错误。why?

不过整个系统运行起来还是要比ubuntu轻便很多,依赖关系也确实简单了很多。至于ABS,我还没有机会使用。莫非,这是我转向gentoo之前的折磨?

换archlinux了,我的linux之旅

接触linux是在大一上吧。最开始是Fedora 8,看重的是名声、技术、背景,以及软件安装光盘的个头——毕竟个头大,软件多,就省得自己再去安装了。说实话我是个很浮云的人。什么新鲜的软件都想拿来体验一下,虽然我不一定用到太多,比如eclipse、netbeans之类。可是Fedora 8有两点让我很是不爽:

  1. 无论是校内还是校外,都没有好用的软件源,虽然我那个时候还不清楚源的具体概念。只是知道那是一个软件仓库。无法安装软件,无疑,这个系统是死的。
  2. 无法启动激动人心的3D。这对一个追求浮云的Linux初学者来说也是毫无吸引力的。

所以那个时候虽然本本上装了Fedora和Vista双系统,但绝大多数时间是在用Vista系统。

后来偶然再一个同学的电脑上看到了ubuntu,我试探性的让他一弄,结果wobbly windows效果就出来了。再我看来很神奇。后来一不做二不休,电脑大换血,重装了Vista和Ubuntu。

只能说ubuntu是个很人性化的系统。帮用户做了很多贴心的工作。LiveCD,wubi,良好的驱动支持,巨大的软件仓库,丰富的国内源,很简单。从Vista到ubuntu的转换,只用了两个月不到的时间。乃至终有一天,我烦透了windows软件的注册破解和广告,心一横,删了Vista,至此,ubuntu成了我的宠儿,不紧不慢的占据了本本250G的空间。

可以说ubuntu带给了我一个高效能的系统。让我有了非凡的GNU体验。Emacs+Firefox的组合,几乎占据了我使用操作系统80%的时间。现在觉得windows的工作方式,如此的傻瓜,如此的低效。

但是ubuntu并不是一个完美的系统。apt-get的依赖关系过于复杂,自作主张的安装给人带来方便的同时也剥夺了人们定制的自由,频繁的版本升级带来很多系统的问题,软件库版本比较陈旧,譬如我一直想用的texlive2008。直到ubuntu 9.10 beta版,texlive还是停留在2007版本。等等。一周以前我决定升级我的9.04到9.10beta版时来体验下Firefox 3.5, OOo3.1时,系统最终崩溃,这已经是第二次版本升级失败。于是我决定给系统来个大换血。gentoo,还是arch?

我选择了arch。首先是时间的原因。其次是我的linux基础还不够。本来打算三天配置一个gentoo,但是这个事情那个事情,最后只剩一天不到。快速的搭建一个可用的系统,只能arch了。安装的过程还算顺利。网络、驱动是两个重头重难题。幸好室友装过arch,给了我很大的帮助。我发现交流真的是很重要的。自己埋头苦干有时候纯粹是浪费时间。今天终于配好了。驱动,字体,中文,美化。凑合能用。虽然还是比不上一周前ubuntu+Mac4Lin的华丽,但也可以看得过去了。不过arch也有不完美的地方。首先是官方的软件仓库很小。很多我需要的软件都没有,譬如dwww。emacs的插件也少的可怜。aur是个不错的选择,只是我还没有尝试。因为浙大10元的vpn只能上教育网。字体配置还有些小问题。部分地方发虚,慢慢调吧。

arch确实让我学到了很多东西。譬如我再ubuntu下从来没考虑过xorg.conf的问题。ubuntu带给人便利,也让人变傻,以至于遇到问题时不知如何下手。对系统的构建有了更进一步的理解。有机会一定要来一次LFS

最后上张图吧。

Linux真的可以代替windows吗?

客观来说,我觉得这条路还很长,而且我觉得结果也不一定很乐观,虽然我现在喜欢GNU,生活在Linux下,也越发讨厌Windows的工作模式和设计思想,但是在很多领域,想要替代windows,很难,很艰难。 

今天遇见了两件不爽的事情

  1. 农行的网银,据说是用了Microsoft的ActiveX专有技术,什么是ActiveX专有技术我不清楚,但是我知道的是,Firefox不支持这种技术。这给我的日常学习生活带来了很多的麻烦。最麻烦的就是这个网银。在VBox虚拟系统和ies4linux两种解决方案均告失败后,我就彻底失去了继续折腾的信心。虽然我很爱折腾,但是这种折腾本身是无意义的。由于技术的垄断封闭和程序的bug,我觉得很多时候这种折腾如果不是必须,就不必要。linux目前还不成熟,很大一方面就是本土化问题,结合伟大祖国的实际,就是中文化问题。最明显的就是linux下的输入法照windows下的输入法还有很大差距。还有一些日常软件虽然有中文语言包,但是很多帮助文档是英文的,并不完善。
  2. pptx的问题。这使我深刻认识到了text格式才是硬道理。latex、xml、docbook、html,这些纯文本格式才是格式排版的必须。前日的M$搞出来的是doc,今日又弄出来个pptx,谁知道后天会不会出个pptxabcd呢。我想微软大概看到了OOo的竞争实力,故意更改一下格式,隐藏下Office2007的格式秘密,好让竞争对手来个下马威,从而把用户圈在Ms office的套件上。Knuth曾将说过:“I wish to die before I have to use microsoft office“。而事实上,他设计的TeX排版系统流行了三十多年,甚至70年代写的TeX文档,现在仍旧能编译产生漂亮的文档。多平台的文档解决方案,恐怕TeX和pdf的组合才是最佳方案。

在很多专业性很强的领域,Windows平台的软件还是占了统治地位的。比如Autocad,事实上的建筑制图标准,Linux下只有PyCAD,不过一看其界面,就知道此软件照Autocad还差很远。其余的,Cadence,还有很多制造业中的嵌入式系统,用的都是专有性很强的软件,离开了windows,整个行业都要发生翻天覆地的变革。要知道,除非Linux的替代软件兼容性做的足够好,否则以前依靠windows软件所建立起来的研究成果,将会成为linux推广很大的阻碍。

令我倍感庆幸的是,我赶上了一个变革的时代,我相信以ubuntu、debian、fedora、gentoo、arch等为代表的linux系统会发展壮大,最终和windows抗衡,并取代windows成为主流操作系统,建立一个自由的软件世界。RMS说的好,软件就像数学定理一样,那里会来盗版、拷贝、版权这些乱七八糟的东西呢?前两天逛书店竟然意外的发现了ubuntu的科普书。仔细想一想,用户习惯是个很大的问题。我相信每个人如果想熟练的使用windows,也要掌握这么一本书。而熟练掌握ubuntu日常应用,所需要的也只是和windows xp入门大全厚度价格差不多的这么一本书。计算机教育要从娃娃抓起,老一辈人们中毒太深,已经无可救药,新一代的我们,才是linux的希望和赌注。 我有时会想,我将来能够写出什么样的软件?会给人们带来多少便利呢?我觉得每个有志的IT人都应该仔细思考下这个问题。否则只是表面光鲜的高级技工罢了。




Host by is-Programmer.com | Power by Chito 1.3.3 beta | © 2007 LinuxGem | Design by Matthew "Agent Spork" McGee