更新记录
GNOME3正式发布后在机子上装了一个64位的Arch Linux来体验,发点感想。由于使用时间有限,一些问题可能是我而不是GNOME3本身的问题。另外其实基本上是关于Gnome Shell的(谁让它占了主要位置呢?)
从2010年8月31日开始,twitter强制采用oauth进行认证,而oauth认证的一个关键是用户名和密码必须在twitter官网进行认证。而对于兲朝用户来说,这就意味着之前的第三方代理无效,必须翻墙才能使用了。电脑上的话还好办,但是手机上始终没有太好的翻墙手段。因此需要一个新的twitter代理,能够做到用户使用原本的basic auth访问它,而它使用oauth访问twitter,从而破解oauth的限制。
要搭建twitter代理,最经济的方式就是使用Google的 App engine 服务了。在网上找了找,一个名为 gtap 的GAE程序已经加入了oauth支持。
网上放眼过去一片总结的,我也来一个吧
从去年12月起,我在Google进行了三个月的实习,一直到今年三月初。
实习是在IME team里,也就是谷歌拼音的项目小组。其实谷歌拼音在内部有个很好听的名字,叫goopy,只可惜没有对外使用。我觉得这个名字比Google Pinyin IME好听多了。另外当时还见到了正在开发中的Android版谷歌拼音,内部代号叫moopy,在内部会议上还听到很多有意思的东西。
实习的过程很愉快,虽然感觉自己作的贡献并不多。很喜欢Google里的氛围,以及内部的餐厅。
实习时和另一个实习生以及一个工程师做了一个20%项目,只可惜这个项目估计永远都不会见到天日了。
在Google实习的过程中学会了一些基本的GTK+编程,回来后和sarlmolapple一合计,决定自己做一个项目来作为学习之用,于是就有了OSD Lyrics。
当时决定做OSD Lyrics是由几个方面因素共同决定的。第一,sarlmolapple找不到合适的OSD歌词软件;第二,看到lrcdis的模式,觉得很不错,能一举解决Linux上的各种播放器的需求;第三,在TualatriX的blog上确认了技术的可行性。
这是我第一次看到自己的软件从无到有一点一点的搭建起来的乐趣。软件中途经历几次模块架构修改,现在虽然还有些架构上的问题,但是假以时日一定能解决的。
一路上遇到许多帮助,这里就不点名感谢了。
话说我还是想用python重写一遍。
惭愧啊惭愧,今年虽然买了不少书,但是看完的只有TAOUP和APUE的前18章。
这两本书给我的收获不小。TAOUP估计要每年看一遍,才能对它所说的东西有切身的体会。APUE让我打下了Unix编程的基础,可惜还没有什么实践的机会。
2010年的目标,是入门Linux内核和驱动编程。
发现我只有在旅途中时,才能安心下来看书。
今年是第三年玩ACM,也是最后一年。依然是在三队,可惜没机会出国。哈尔滨赛区的杯具让我们赶上了,从国内第一个赛区直接变成了最后一个赛区。
在宁波是乐极生悲,乐的是我们奇迹般地拿了亚军,当然这是在清华两支旅游队不请计排名的情况下。悲的是我弄丢了钱包,银行卡和身份证都没了,户口由于升研究生到现在都还没办好,一直黑户&没钱中……
哈尔滨收官之战,中规中矩地拿了个第五,也有金牌,算是个不错的结尾。
三年ACM,第一年2银,第二年1金一银,第三年2金,也算是一帆风顺了吧。我是不是应该写篇总结什么的呢?
8月底的时候手机坏了,于是告别陪伴我四年,修过无数次的手机,决心换个新的。
当时已经对G1口水已久,但是2K+的价钱实在是不敢奢侈。然而就在我经过一家卖G1的柜台,拿出来把玩了五分钟之后,还是冲动了。这是我最奢侈的计划外消费了,不过好在物有所值,至今对我的G1是相当满意的。
喜欢Android就是喜欢它的自由。于是把Android的SDK文档看了个大概,也拿Anfetion来练了练手,真的很好玩,不愧是geek们喜欢的手机(虽然我并不认为我是个geek)。
我是一个不善于执行计划的人,所以计划什么的就算了吧。21世纪的第二的10年的第一年(真绕口),好好做自己应该做的事,读想读的书,继续充实自己,这样就够了吧。喜欢
一直只订阅了自己的评论RSS,没有注意留言,今天才发现有几个朋友留言了,在此说声sorry。
虽然估计留言的人自己都不记得了,不过还是回复了一下。
之前第一次装Gentoo,因为把~x86直接解禁,导致了最后许多软件包冲突,无法全局更新。这几天因为要写论文换回Ubuntu(Gentoo下LaTeX的CJK一时搞不定),顺便把原来的Gentoo给重装一遍(chroot真是个好东西)。
一步步装完,按照X.org安装指南装好X.org,装好gnome-light,重启进入Gentoo,发现键盘用不了,但是触摸板很神奇地能用。退出X,查看xorg.conf,键盘设置良好。
然后注意到了退出X后屏幕留下的启动信息,发现说找不到evdev。估计是X.org升级的影响。翻到X.org升级指南,发现果不其然。因为新版 X.org在驱动上使用了HAL,使用了evdev驱动来控制键盘(还有鼠标?)。
于是首先要确保内核开启了evdev支持(默认已开启):
Device Drivers ---> Input device support ---> --- Input device support [*] Event interface
编辑/etc/make.conf,在INPUT_DEVICES里加上evdev
最后更新xorg-server:
emerge -uav --newuse xorg-server
解决方法是从 http://bbs.weiphone.com/read.php?tid=515169 看来的
从本质上来说就是修改hosts文件添加market的IP。具体步骤是:
su
应该是需要取得root权限的机子才行,我刷的第三方ROM已经有权限了
mount -o remount,rw /dev/block/mtdblock3 /system
vi /etc/hosts
在hosts文件里添加这么一行
74.125.93.113 android.clients.google.com
G1没有ESC键,可以用右Alt+1或者轨迹球+1代替
其实在看到 lrcdis 增加对 Exaile 0.3 的支持的时候就知道 Exaile 0.3 的 dbus 接口改了,但是一直很懒,而且有不少事情要办,再加上没人来问,就放在一边不管了(其实就是这家伙懒嘛)。
但是终于还是有人问了,于是终于有动力去做了。Exaile 的文档做得不太好,没有 dbus 接口的文档,于是只能看源代码了。Exaile 的 dbus 接口代码在 xl/xldbus.py 里,因为是用 python 写的,所以很易读。
顺手把 xmms2 的支持给打开了。其实 xmms2 的支持早就好了,但是我没装,也就没测试,所以就把代码屏蔽掉了。现在还是没装,等用户反馈吧,嘿嘿。
最近一直没动 OSD Lyrics,一直想做的分离下载也没做,过几天再说吧,嗯。
PS:发现最近的blog全都是 OSD Lyrics 的更新,我果然是懒了啊……
上一篇文章说过,我因为pygtk用不了而没法用ibus,其实具体原因是这样的:
在某次emerge -u world的时候,我安装了python 3.1,但是没运行python-updater(就算运行了,那些模块现在能全部移植过去么?),而且没有设为主python版本(毕竟相关应用还不成熟,而且不向下兼容)
然后又是某次emerge -u world,pycairo说要python2.6,于是就装了
接下来就杯具了:
于是没办法,手动emerge pygtk,但是不管emerge了几次,运行ibus-setup都说找不到gtk模块。
终于,在网上搜到,原来少的不是pygtk,是pygobject-_-(我说这提示就不能友善点么)
把pygobject重装,又依次提示没有ibus、dbus和xdg,重新emerge ibus、dbus-python和pyxdg就OK了,注销再重新登录后就能用ibus了,感动啊~~~
于是得到的教训:升级python一定要记得python-updater,emerge完之后一定要留意软件包的message
如果要用 GTK+ 写一些自定义界面的程序(如QQ),免不了要实现一个背景透明的 widget。一个简单的办法是GtkEventBox+GtkImage,不过这种方法太丑陋了点。然而用通常的方法来创建GTK+ widget 的话,会自动给背景填上颜色,设置了 gdk_window_set_back_pixmap (window->window, NULL, FALSE); 也不行。