/var/lib/dpkg/status 文件导致不能安装和删除deb包的问题

今天在770上删除一个package时遇到了这样的问题(可能debian系统都可能会遇到这个问题吧)

dpkg: parse error, in file `/var/lib/dpkg/status' near line 3433 package `osso-pdf-viewer':
`Depends' field, reference to `libfreetype6': version contains ` '
E: Sub-process /usr/bin/dpkg returned an error code (2)

google后得到的线索似乎是status这个文件坏掉了,可能是我试验maemocjk-uninstall程序过度删除的后果吧。

尝试用相同目录下的备份文件status-old覆盖status,问题得到了解决。当然,先备份一下status这个文件。

How to add a new language to 770/N800

Adding a new language to 770/N800 is very simple. Once done, you can choose it from the "Device language" list of the "Language & region" applet.

add new languages to device

1. install extra locales, got from http://garage.maemo.org/projects/locales-extras
2. add the country code to gconf configuration database, e.g.

# gconftool-2 --set /apps/osso/applet/languageregional/available_languages \
--type=list --list-type=string "[zh_CN]"

an alternative way to do this is using gconf-editor.

of course, the text of UI need to be translated to this new language.

移植StarDict到maemo平台 (1) 准备工作

参考maemo 3.0 Porting GuidePorting existing application to maemo 3.0 一节。

StarDict的源码取自Ubuntu Dapper,版本2.4.5-1.1

1. 由于要使用Hildon UI,所以可以去掉libgnomeui, libbonobo2, liborbit2。查看configure.in后发现可以使用configure的一个选项 --disable-gnome-support。修改configure.in,在加入对hildon-libs 和 libosso的检测,PKG_CHECK_MODULES(STARDICT, [gtk+-2.0 hildon-libs libosso])

2. 原来的help文件不适用于maemo,所以help目录不需要处理。修改Makefile.am,从SUBDIRS列表里删去help,还需要修改configure.in,从AC_OUTPUT列表里删去help及其子目录的Makefile

3. 执行autogen.sh,生成新的configure脚本

4. 修改debian/rules文件中调用configure脚本那一行,加上 --disable-gnome-support

5. 移去debian/control里对 libgnomeui-dev, scrollkeeper, libbonobo2-dev, liborbit2-dev 的依赖,修改Section为user/utils

6. 现在可以用dpkg-buildpackage命令编译了。

7. 为了能够正常显示英语音标等符号,还需要ttf-thryomanes字体。

stardict in maemo