两个新的 pacman 外壳:clyde 和 packer

Arch Linux 独特的 pacman 包管理器是其备受亲睐的原因之一,作为一款命令行包管理器,它深谙 K.I.S.S. 原则,在使用上甚至比很多图形界面的包管理器还要强大,还要方便、直观。 然而,Arch 的用户总是挑剔的,总是希望日常使用的包管理器更加的 Simple and Stupid,于是有了 pacman-color、yaourt 等等,种种扩展、外壳更是把 pacman 武装成了神兵利器,再加上如我一般的用户更是用 alias 将各种命令简化,简简单单的 ysyu 命令就更新了整个系统,实在是把 Linux 下的包管理简化到了一个极点。 不过,总是有更加挑剔的用户,Linux 世界才有这么多的优秀软件,据我所知,今年又有两个 Arch 用户不满 yaourt 的缓慢、低效、丑陋(虽然我没感觉),开发出了两个新的 pacman 的外壳(wrapper): clyde 和 packer 。 Clyde Clyde 由 DigitalKiwi 和 Ghost1227...

简单实现 Python 有序字典(Ordered Dict)

Python 的 Dict 类型很好用,不过有一点可惜就是它的 keys() 是乱序的,想要用它来保存有序的 key-value 对(比如配置文件)就比较困难,碰巧我的毕设就要用到这样一个类型来存放配置文件,怎么办呢? 搜索了一下,Python 2.7 / 3.1 才有 Ordered Dict 的支持,我总不能去 Python 源码里面拽吧…… 还有些方法比较陈旧,继承自 UserDict,不支持 iter*() 系列方法,虽然不碍事,不过心里还是不舒服。 不过找来找去,还是让我找到了相对比较简洁,功能有符合要求的代码,见下: from UserDict import DictMixin class odict(DictMixin): def __init__(self): self._keys = [] self._data = {} def __setitem__(self, key,...

最近的大小杂事

好久没有更新博客了,确实是忙翻了,很可能还会接着忙下去……生活不易啊…… 先是上旬 Redhat 的 HR 打来电话,说我当时的面试表现还过得去,能给我一个实习机会,问我来不来。这种机会我当然不会错过啦,于是开始探讨实习事宜,签署实习协议。 还没忙完呢,中旬考研成绩就出来了,本来以为没什么希望了,没想到居然考了个 316 分,对于我那种学习方法来说应该算是神迹了吧……很快北航复试分数线出来了,290 分,我居然过线了……好吧,开始忙复试吧…… 然后学校突然召集大家,一个星期内确定毕业设计题目,之前开学半个月都不着急,现在急个屁呀!本来想在 Redhat 做题目呢,结果还没商量好,计划就不得不夭折了。这个时候老师手里的 Linux 相关题目全让人选走了,最后不得已,灵机一动,自己想了一个题目,《Linux 下图形界面下载工具的设计》,虽然简单了点(目前计划基于 aria2),不过这是我觉得用 Linux 最不顺手的地方了,大家觉得怎么样呢? 题目就这样定下了,不过因为接下来仍然忙得要死,现在还没什么进展,不过六月之前搞定的话,应该不是特别的难吧…… 下旬,实习的协议已经全签好了,4 月初入职。 这时候到了北航的复试了,北航的软件总共招 60 人,除去 31 个保研的,其他人竞争那 29 个名额,惨烈吧?来复试的还有不少北航本校的,另外不少分数上了 380 以上的,看看我自己的分数,都觉得考上的几率有点惨不忍睹…… 英语复试倒还简单,自我介绍加上几个小问题,专业课面试就变态了,桌上一堆纸条,让你抽题!杯具就这样产生了,连抽了 15 道题以上,都是数据库题目,哥可是没学过那玩意的啊……又抽了两道操作系统和网络的题,答的也不理想,立地成仁了……(话说面试时有个老师居然在屋里打电话,太不尊重人了……) 复试杯具后,心情很不爽,睡了一天,起来准备调剂。 调剂时看中了两个学校的软件学院,一个是北交,一个是中科大。北交的软件貌似没有中科大强,不过中科大地处合肥,学习要去苏州校区,地理位置未免是个问题。接到两家学校的复试时间还犯了冲突,北交 4 月 1 号,中科大...

有图有真相,Samsung N148 上网本使用报告~

寒假之前就有意向想要买一台上网本了,主要是宿舍里太吵,不利于学习,用台式机让我后悔死了。因为有了台式机了,暂时也不想换,所以用上网本作为便携性的补充最好不过了,用来编编程、看看书、听听音乐,没有其他需求了。 翻了好长时间网站,才找到三星 N148 这款上网本,这款上网本新品上市,成本降低,性价比很高。采用了 Atom N450 的 CPU,主频 1.66,比主流 N270、N280 要强上一些,当然性能上差别不大,据说功耗上要低不少。显卡是 GMA3150,也是比较新的,当然上网本上也不要求它能看高清了,看 720p 一点也不卡。1G 内存有些小,250G 硬盘还好,6 芯电池续航比较好,摄像头、读卡器、VGA 接口,唯一可惜的是没有蓝牙。 这款上网本,在新蛋上买是 2388 元,比旧一些的型号联想 S10–2、三星 NC10 之类的还要便宜不少,就是到货太慢,等了一个星期,不催还不给我发货。 有图有真相,看看 10.1 英寸的 N148 和 19 英寸的液晶屏的对比,外加我超级乱的桌面: 说实话,还是感觉 10.1 有点大,带起来没有想象中的方便,但是太小了屏幕上也放不下什么东西了吧…… 3 月 8 号拿到的本本,先划出二十多 G 用...

另一个图形界面批量改名工具——GPRename

今天用到批量改名的功能,本来想要用 Linuxtoy 介绍的 pyRenamer 的,不过通过 AUR 安装的时候发现 pyRenamer 的服务器杯具了(法克及。爱抚。打不留!)只好寻找一个替代产品,这就找到了 GPRename。 GPRename 是基于 gtk2-perl 的批量改名工具,我们知道 perl 在正则的使用上是十分灵活的,用来做改名工具最适合不过。 不知道是不是和 pyRenamer 有什么渊源,两者的界面十分相似,GPRename 支持对文件名改变大小写、插入、删除、替换以及批量改为数字文件名的功能,在正则表达式的帮助下足够应付大多数情形,对于那些有这种需求,又懒得或者不会自己编写脚本的人一定很有用。 想要安装 GPRename,在 Arch 里只需要使用下面的命令即可: $ sudo pacman -S gprename

GNOME 2.29 的新改进

这两天回到学校,有惊无险地把 Arch 更新了,到 Arch 官方源上一看,发现 gnome-unstable,也就是 GNOME 的开发版本 2.29 已经在里面了,而且这次有了 x86_64 的包,作为一个更新狂,当然赶紧加上源更新。 有用 Arch 的同学可以在 /etc/pacman.conf 里面加上这两句话来开启 gnome-unstable 的仓库: [gnome-unstable] Include = /etc/pacman.d/mirrorlist GNOME 2.29 带来了那些更新呢?我来说说对我来说比较有用的: Nautilus 默认为 Browser 模式,增加双面板视图。 DeviceKit-disks 重命名为 udisks,带来大幅度改进。 Evince 支持反色,支持查看 PDF 文件的注解。 Gnome Terminal 支持无限回滚,可以设置粗体字的颜色。...

Personas 给你的 Firefox 换件衣裳

Firefox 3.6 今天发布了,并且以追新著称的 Arch 很快就将其打包到 testing 源里,作为不怕死的小白,我当然立刻安了上来。 其他的功能改进还没有发现,首先第一次启动的新版 Firefox 就自动弹出了一个网页,Personas,这是什么? 看出我的 Firefox 跟上次相比有什么不同了么?为了展示效果,我特别将一些没用的工具栏都打开了,这样就可以看到完整的图片了。 是的,这就是一直处在 Firefox 的实验室里,现在终于推出的 Personas,它给 Firefox 添加了即时换肤的功能,而不用再重启了! 好吧,就如你所看到的,这就是一个背景图片加上一些前景、背景色的搭配,是不是很熟悉?是的,我也感觉,这跟 Google Chrome 浏览器不是如出一辙嘛? 不过 Personas 里面的主题显然要比 Chrome 那里多得多,而且将鼠标移到 Personas 网站上的图片就可以即时预览,很是方便。 如果你喜欢这种个性鲜明的主题的话,赶快去 Personas 的官网 试一试吧~ PS:Arch 升级了 libpng 和 libjpeg 之后天下大乱,一半的程序都杯具了……还没有升级的同学千万别升这两个包!...

Tomfox 让 Tomboy 成为 Firefox 的收集面板

最近在看《Linux C编程一站式学习》,发现了很多以前在 C 语言学习过程中没有发现的问题,于是想着记录下来。作为一个文明人,当然不能动笔来记,于是就想到了一直被我扔在角落里的 Tomboy 来。 然而,每次从网页上复制下来保存在 Tomboy 里面也不太方便,于是到 Firefox 附加组件的网站上一查,查到了 Tomfox 这个扩展,有了这个扩展,只需要选中网页中的文字,从右键菜单中选择“Create Tomboy note”就可以了~记录中还会有来源网页的地址链接,很容易就可以找到来源,比自己手动复制强多了。 另外,Tomfox 还提供了几个有用的选项,可以自定义标题、记事本、是否立即显示便签等等,很好用。 我使用 Tomboy,通过它的备份插件,将便签同步到了 Dropbox 的子目录,可以实现很方便的备份。 记得以前用傲游浏览器,最常用的就是它的收集面板,现在貌似还可以同步到服务器了,现在使用 Tomboy 和 Tomfox 也实现了类似的功能,可以方便地采集网页上的信息了。 你还在用收藏夹来保存有用的文章么?试试 Tomfox 吧~ 下载地址: Tomfox

让 Firefox 的纵向空间无限大

自从在异次元看到一篇《 FireFox 仿4.0版超酷全半透明玻璃特效皮肤 》之后,我就一直在研究怎样让 Firefox 更加方便,不仅仅是像《使用 Stylish 打造个性化 Firefox》那样调整组件的外观颜色,还要尽可能地增大显示空间,让每屏显示更多的内容。 先看一下效果图~ 配置方法: 用 Firefox 自身的定制工具栏功能,把想要的工具栏按钮转移到菜单栏上去。 安装扩展 Hide Caption(隐藏标题栏)、Fission(在地址栏显示进度条)、Omnibar(整合搜索栏到地址栏)、Tabkit(标签栏树形显示)。 (可选)安装主题 Strata40 及相应扩展 StrataBuddy,使主题具有 Firefox 3.7/4.0 元素。 经过这样一番配置,纵向的工具栏就只有两个,其中的状态栏我想了很多办法都没办法去掉的同时保留右下角的那些功能按钮,只能作罢。 标签栏放在右边,是因为大多数网站在宽屏下观看都会有很大留白,即使没有留白,对于文字网站来说,横向太长也不利于阅读。 关于这项配置,大家有什么想法么?欢迎前来交流~ PS:关于谷歌这件事,我想说的大家都已经说过了,只能说一句:Fuck! 最后送上几大发明的图片:

推荐关于 POSIX 线程的几篇文章

万恶的考研终于结束了,虽然很可能明年会接着考(汗……),不过暂时算是放松下来了。 接下来的时间里,希望能够巩固一下自己的基础知识,学习一下 Linux 下 C 环境编程之类的,搜索了一下,发现 IBM 中国上不少好文章。 如果你对线程编程感兴趣,却苦于无法入门的话,不妨看一下下面几篇文章: 《POSIX 线程详解》:这是由 Gentoo 创始人 Daniel Robbins 大牛写的系列文章,一共有三篇,极力推荐!除了第三篇稍微有点难,其他两篇都是浅显易懂,很好的入门文章。 《Posix线程编程指南》:作者似乎是麒麟操作系统的工程师,专攻多线程一块,文章对 API 讲解比较透彻,可以作为上面文章的补充和扩展来看。 《pthreads 的基本用法》:这篇虽然短了点,但是对互斥和死锁讨论的比较多,例子也比较有趣,值得一看。 虽然这三篇文章都比较老了,但是 POSIX 标准也没什么变化,应该是足够了。 另外,这里有一篇《Linux环境进程间通信》是关于进程的,写的也很全面,正在研究中……