@shellex说: 没关系,意思到了就行了。

Posts Tagged ‘gentoo’

Gentoo上搞定Intel 3945 无线网卡

嘿嘿… Shellex作为一位符合 Lazy eval 标准的懒人,用gentoo这么久了,都没有搞定无线网卡,实在是太帅了。趁着2.6.30内核的放出,考虑着wifi的方便性,shellex决定稍微搞搞,呵呵。
内核选项
首先呢…先看gentoo wiki~按照上面的说明设置内核选项。然后根据我的情况…IEEE 802.11 无线网络栈,偶的intel 3945 ABG需要这个。关于这些东东,偶是通通通地编译进内核,当然编译成模块也可以,只是shellex懒得又挂载:
[*] Networking support  —>
[*]   Wireless  —>
<*>   Generic IEEE 802.11 Networking Stack (mac80211)
这是我的无线适配器驱动,我编译进内核:
Device Drivers  —>
[*] Network device support  —>
Wireless LAN  —>
<*>     Intel PRO/Wireless 3945ABG/BG Network Connection (iwl3945)
接下来装软件
emerge -av net-wireless/iwl3945-ucode
啊,我装的是这个,但是我不大清楚它和net-wireless/ipw3945系列是什么关系,因为oceanboo同学装的是ipw3945.
然后装无线网络配套工具。这个参考oceanboo的文章就好,只不过最后我是装完wireless-tools就用wicd来配置了。。
嗯,其实Shellex也不知道为什么,就是一路稀里糊涂地就把无线网卡搞定了,特此撰文留念。
遗憾
在Wicd Create Ad-Hoc Network时总是会有如此异常,暂时没研究为什么,准备提交bug:
Starting the Ad-Hoc Network Creation Process…
Traceback (most recent call last):
File “/usr/lib/python2.6/site-packages/wicd/gui.py”, line 280, [...]

gentoo最近的一些小变化

先是在我的the second workspace “Shit” 把整个系统emerge -uvDN world了一遍(这是我第二次维护性地emerge world,TX同学和骨头同学都说我懒得可以,其实我是没条件啦…)。以后可以考虑不定期地每隔几天来一次。
软件方面的变化:
gnome方面的影响正在逐渐降低:首先是gnome-settings-daemon被干掉了,用一些别的东西取代了:

feh设置壁纸
gtkrc-2.0设置字体主题之类的GTK相关的东西
作为Shellex长期使用的音频播放器,rhythmbox被exaile赶下台,原因是这个东东如果失去了gnome快捷键的支持就没有全局快捷键了(也许是我不会弄,但是懒得去看gnome是怎么控制它的),而exaile支持从命令行控制,这样我就可以直接用Openbox控制播放了。exaile的bug虽然多,但是还是能用的。
amixer代替Gnome的那个声音调节

重量级日常软件的输入法世界也发生了变迁:scim在绝大多数情况下被ibus取代
Mono系列撤离:为了一个长期不用的Gnome-Do保留mono是不明智的。因为我已经不用dock了,twitter使用icloud机器人和twitterFox(支持通知了)搞定,文档方面有了强大的Zotero…所以Gnome-Do可以退役了。当然了,Shellex有一个创造一个Console下的Gnome-Do的计划。
另外,Mono也是Shellex放弃Banshee的主要原因。
—————— update 25th May 2009 ———————
又用回Rhythmbox了呵呵。因为知道怎么利用dbus控制它了。原以为要自己写py脚本控制,后来发现有dbus-send。这样的话就省事了呵呵。毕竟exaile目前这个3.0 alpha 的版本bug实在是多了点,等它稳定了我再来用。
前进:
dbus-send –dest=’org.gnome.Rhythmbox’ /org/gnome/Rhythmbox/Player org.gnome.Rhythmbox.Player.next
后退:
dbus-send –dest=’org.gnome.Rhythmbox’ /org/gnome/Rhythmbox/Player org.gnome.Rhythmbox.Player.previous
—————— update 25th May 2009 ———————
更简单的方法(我火星了)。一目了然
rhythmbox-client –help

不用编译,用最新的Google Chromium

关于Google Chromium和Google Chrome的关系请看这里。所以呢,叫Chromium比较好。
偶前天说写个google chromium的ebuild,但是木时间哈,所以今天看看ebuild how to才写完。
这是Shellex第一次写ebuild哦,里面用到了curl来获取最新的版本号。不知道可以不可以,因为不知道如何用wget做到一样的功能。所以请保证安张有curl,有什么不对的地方还请大家见谅喽,可以直接告诉我。
嗯,现在用gentoo的同学,不用编译也可以用上最新的Google Chromium的开发版快照了!
首先,下载这个文件[右键另存: google-chromium-bin-9999.ebuild] (下载见下文)。放到你的本地portage的某分类下。比如我放在是/usr/local/portage/www-client/google-chromium-bin/
当然啦,Shellex不保证上面那个下载链接是最新的。如果有变化,请移步Shellex-overlay,在那儿可以找到Shellex用的最新ebuilds.
接下来请执行:
# ebuild google-chromium-bin-9999.ebuild digest
# emerge google-chromium-bin
如果没有错的话,chromium就安装完毕了。执行
$ chromium-bin
可以启动它啦。以后想用最新的Chromium, 只要emerge google-chromium-bin就可以啦
BTW: 当然版本2.0.177.0 (14518),支持Tab拖动了。
下面是ebuild文件,可以直接复制一下:
————Update 27th April 2009 ————
ebuild更新[google-chromium-bin-9999.ebuild],bug fix: Could not fetch latest deb package
现在每天都会执行一遍# emerge google-chromium-bin。呵呵,希望每天都有惊喜。

在gentoo上试用google Chromium

一直想试试传说中的Google Chromium for Linux来着,但是苦于转战Gentoo,debian系的ppa source与Shellex无缘。而Shellex又是一个很懒的同学,懒得搞那些deb…于是上irc看看哪位同学有从svn编译过Chromium的经验…
嗯,考虑到Shellex的耐心和本本的健康…后来还是不再做编译Chromium的打算…
现在好了,可以直接使用最新的Chromuim开发版快照来解解馋:
http://build.chromium.org/buildbot/snapshots/chromium-rel-linux/
里面有个LEAEST文件包含当前最新的开发版快照版本号。比如当前是14299(哈,写文章之前还是14298呢),只需要下载对应目录中的包即可:
这里有i386和amd64的版本。
这下好办了,直接下载,嗯,虽然是deb包,但是还是可以直接解压的嘛…
嗯,写个gentoo ebuild也是一件很容易的事情了。明天写吧。
把里面的data.tar.gz解压出来,终端下运行OOXX/opt/chromium.org/chromium下面的chromium-browser
一般情况下会提示啥啥啥动态链接库找不到的。比如我的缺libnss3的一系列so。那好办,装一个即可。对于仍然提示找不到so文件的,可以在当前目录做一个指向你的对应so的软连接。
我做了这么些:
libnspr4.so.0d -> /usr/lib/nspr/libnspr4.so
libnss3.so.1d -> /usr/lib/nss/libnss3.so
libnssutil3.so.1d -> /usr/lib/nss/libnssutil3.so
libplc4.so.0d -> /usr/lib/nspr/libplc4.so
libplds4.so.0d -> /usr/lib/nspr/libplds4.so
libsmime3.so.1d -> /usr/lib/nss/libsmime3.so
libssl3.so.1d -> /usr/lib/nss/libssl3.so
恩,反正它提示缺什么你就做什么就好了。就像这样:
$ ln -s /usr/lib/nspr/libnspr4.so ./libnspr4.so.0d
最后执行chromium-browser应该可以看到结果了:

哎,终端里刷出好多error来哦,很多菜单项也不大可用。用它访问wp的后台会发现wp给webkit core的浏览器做的css效果,但是页面显示不大稳定…打开页面时,常卡在一半页面上就没有了
加油哦,Chromium !

最近的gentoo碎碎念

第一个问题是graphviz,因为最近需要用它搞几张图的。每次输出图片的时候都提示找不到字体云云:
Could not find/open font
NND,用equery小看一下graphviz和gd,添加一个fontconfig的USE给gd,添加一个cairo的USE给graphviz(不知道是不是必须的)就行了。
第二个问题是字体,使用等宽字体时,中文是难看的文鼎楷体,我已经忍受了很久了。明明.font.conf文件写得很好了,但是就是不起作用。NND。
跑去irc问问,死花花告诉我删除文鼎就好…
后来一检查,发现文件名写错了。.font.conf 改成 .fonts.conf即可…
看我的vim截图,不错吧。
第三个是给大家说个冷笑话,Shell.E.Xu同学告诉我的。
有一天,同事说想在脖子上纹一纹身,问我们纹什么好。
我脱口而出:</head><body>
哈哈哈哈…..槑…
Shell.E.Xu同学说话风格真的和星君同学有点像(按照他们的风格,肯定不承认),改天介绍他们认识。
—-Update 16th April 2009 —-
应leeight同学的要求,贴.fonts.conf

serif

[...]

我也搞个私家gentoo overlay

Tx同学自己在github搞了个TX Gentoo Overlay, 看上去真爽的,我也搞一个。
但是偶不会Git(暂时也没有时间学Linus大神写的NB东西),那就先在code.google.com上搞一个好了。
http://code.google.com/p/shellex-overlay/
目前就4个ebuild, 基本上bugs.gentoo.org搞的, 有些是自己写的。

games-board

glgo: 有名的Panda-glGo,但是是闭源程序,提供IGS对弈平台,也可以作为GNU Go的外壳
quarry: 也是围棋来着,GNU Go的外壳。由于glGo有时不大好使,所以用它

net-misc

iptux: 有名的飞鸽传书Linux客户端之一

x11-misc

tint2: 我用的panel程序,很简洁,也很漂亮

可以通过下面命令获取Shellex 私家 portage:
$ svn checkout http://shellex-overlay.googlecode.com/svn/trunk/ shellex-overlay-read-only

我也发现Gentoo对桌面程序不大关心。比如nautilus的一些扩展都不在官方portage里。呵呵,回头自己搞好了。

备份&分享一些配置文件

基本上Gentoo稳定下来了,备份,分享一下部分配置文件好了。
Openbox:

rc.xml
autostart.sh
menu.xml

Tint2:

tint2rc

Vim:

vimrc

Vimperator:

vimperatorrc

Screenshots:

让你的Linux淫荡起来

哈哈,开始使用小贱兔( Gentoo )后免不了折腾,于是潜移默化地,模模糊糊地,了解了一些原来不了解的,有关Linux的东东,比如udev。
前天跟TX同学说我想研究自动挂载磁盘设备。他让我参考这篇文字就行,这样就可以像以前Ubuntu中的Nautilus一样,在侧边栏自动显示分区。
但是这不是我想要的 — 或者说,不是真正想要的 — 我的目的是:让偶的Gentoo变得淫荡起来!
偶参考的是这几篇文章:

Writing udev rules
通过udev自动挂载U盘的方法
添加Udev规则,让Linux自动挂载U盘

有关udev的介绍就不多说了,上面的文章说得很清楚了。关键是必须知道,udev 才是直接从内核接收设备连接或断开信息的主体,不是hal。
但是,udev怎么让我们的Linux变得淫荡起来的呢?
很简单,我们知道,计算机上有一种动作是非常YD的…那就是插USB设备,比如,U盘…
哈哈,这样事情就明了,从udev那儿我们可以得到设备接入和设备断开的通知,而我们要做的只是编写一些udev规则即可~
比如我,准备了一个usbmount_files目录,里面放wav文件的。
然后准备一个usbmount.sh…里面是….bash脚本。
然后去/etc/udev/rules.d/ 建立一个新的规则:
# vim /etc/udev/rules.d/10-usbdisk.rules
比如我的:
# cat /etc/udev/rules.d/10-usbdisk.rules
KERNEL==”sd[b-z]“, SUBSYSTEMS==”block”, RUN+=”/home/shellex/scripts/usbmount.sh”
表示当有叫sdb~sdz的设备接入,而且设备属于block,那么就运行我们那个usbmount.sh
不妨看看usbmount.sh的内容好了:
$ cat usbmount.sh
#!/bin/bash
echo “$DEVPATH $ACTION” >> /var/log/usbm.log
cd /home/shellex/scripts
if [ $ACTION == "add" ]
then
aplay usbmount_files/moan.wav
elif [ $ACTION == "remove" ]
then
aplay usbmount_files/finish.wav
else
echo “nothing”
fi
哈哈哈哈,moan.wav是什么声音呢?finish.wav是什么声音呢?只可意会不可言传哦哦哦哦….
如果你想要Shellex亲手截取的这两段声音,留言索取好了。别忘了填好Email哦。
或者,哪位同学贡献一下可用的文件分享空间吧~~~~

点击下载
[...]

慢慢地进入Gentoo的世界

嘿嘿,进度很快哈。
初期得宜于TX同学和骨头同学的帮助,Shellex这个菜鸟昏昏沉沉地上路了…
去Gentoo!像朝圣者每天对着耶路撒冷做祷告,偶每天emerge都一下,偶心中的Gentoo居然也像模像样了ye~ 我想,这和我的聪明才智也是有一些关系di…
杂谈几句
最初装的gnome-light,但是偶后来心想,偶也不是TX和骨头那样的Gnome控哈…对Gnome依赖也不大…Compiz的话…也就比较怀念那个Scale插件,别的都无所谓了。
故觉得用个light-weight的WM配配也差不多了好像。由于以前家里用过fluxbox,所以这次也用box系列好了,openbox不错的。Gnome-do少不了了;taskbar用Tini2,去用作者的ebuild,支持trayer,不错的;别的杂七杂八的差不多哦就OK,还是有点怀念那个Scale插件,呵呵。
别的程序嘛,基本上都是原来上gnome的,不大轻量级了,什么nautilus rhythmbox的。没办法…习惯了
恩,下面这些是偶的记录….
[Mar 22 2009 ]

在9.04发布之际,偶怀着万分崇敬的心情,在TX同学和骨头同学的唆使下,准备投奔gentoo。(好吧,我承认他们没有主动唆使我,是偶主动di… )
Ubuntu下Chroot安装基本系统…完成
安装X…完成
安装Gnome-light…出现问题,单独emerge metacity,解决。
进入X…失败

[Mar 23 2009 ]

安装Gnome-light…完成
安装intel显卡驱动(偶之前以为不用装这个呢)…完成
进入X…成功
有事,离开

[Mar 24 2009 ]

安装openbox…完成
安装subversion…完成
安装slim…完成
安装tint2…完成
安装conky…完成
安装gnome-do…完成
安装gnome-settings-daemon…完成

[Mar 25 2009 ]

安装wqy-正黑…完成
安装Droid font family …完成
安装SCIM…完成,但是安装sunpinyin失败。
得到gentoo-china的开发者同学帮助,安装sunpinyin…完成

遇到的问题:

进入X…失败

解决: 安装intel显卡驱动(偶之前以为不用装这个呢)…完成

Firefox在浏览包含Flash的页面时崩溃

解决: emerge/re-emerge curl with USE=’nss’,Flash貌似用这个玩意fetch url

无法打开png/jpeg文件,feh和scrot都不工作

解决: emerge/re-emerge imlib2 with USE flags [...]

Page 1 of 11