Michal Čihař - Blog Archives for English

New phpMyAdmin features - user preferences

The upcoming 3.4 release will bring lot of new functionality. Some of that has been developed by core members, but many contributions were made thanks to Google Summer of Code program, where five students were working on improving phpMyAdmin. If you want to try new features, you can do that on the phpMyAdmin demo server. And I will introduce them in series of blog posts.

One of long requested features was ability to change configuration for each user. And phpMyAdmin now has it. If you have configured the phpMyAdmin configuration storage, settings are permanently stored in the database, otherwise in session and optionally in web storage in your browser.

You can configure any aspect of phpMyAdmin not affecting security or server performance, like confirming DROP queries, default export settings, user interface tweaks and so on.

New phpMyAdmin preferences page

This feature was implemented by Piotr Przybylski during Google Summer of Code 2010.

Czech foreign words dictionary in Debian

Yesterday, stardict-czech got accepted to Debian. So there is yet another useful dictionary for Czech users available in Debian without need to use my repository (however daily builds are still available there).

The dictionary is built from ABZ.cz: slovník cizích slov using my set of scripts, which are also capable of converting other dictionaries.

Thanks to FTP masters team for accepting new package even in freeze, when they are busy with other things. Great work guys.

Gammu documentation improvements

During the weekend, I've found some time to improve documentation for Gammu. One of user accessible things which did lack documentation are native file formats used by Gammu.

There is not that much of them as Gammu supports standard formats for most data (like vCard, vCalendar, iCalendar), but there are things where standard simply does not exists and we need to store that data as well. This is the case for backups (both data and SMS), where SMS backup format is used as well for files backend in Gammu SMSD.

So I went through the SMS backup internals and wrote the documentation. While reading the code I of course discovered quite obvious bug, which was for some reason undiscovered for very long time.

Call for Wammu translations

I'm about to release new Wammu version in one or two weeks, so it's best time to look at the translations and improve them. There is not much new messages since last release, but only few translations were complete back then, so virtually any language (Czech and German are the only ones complete right now) needs improvements.

To translate you can simply use web interface:


If you want more information about translating, please visit our website:


Looking for VServer alternative

It seems like VServer is not something for long run because it does not seem to want to be upstream and there is also no good future for having it as patch in Debian for long run. So I should look for alternatives and probably migrate to some other solution while upgrading my server to Squeeze (once it is released or really close to the release).

There are various options, starting with OpenVZ, through Linux Containers (LXC) up to full virtualization (probably KVM based). With OpenVZ the situation won't be much better, so it is not a real option. For various reasons I don't want to go to full virtualization, I simply thing containers are good enough and avoid too much overhead in some situations.

So the only remaining solution seems to be LXC. There even seem to be some people who managed to migrate from VServer, which is good and will be definitely helpful. Now it's time to play with lxc a bit before I will try to implement it for real.

Gammu gets m-obex support

I've found some time to implement m-obex protocol based on documentation provided by samsyncro project. However I don't have any phone to test it, so any testers are welcome :-).

The testing should be quite easy - just get current Git version of Gammu (either using git or use snapshots) and try to use commands which manipulate with contacts and calendar:

gammu getallmemory ME
gammu getallcalendar
gammu getmemory ME 1
gammu getcalendar 1
gammu addnew test.vcf
gammu addnew test.vcs

In case you have not yet used Gammu with your phone, the configuration for USB cable should look like:

device = /dev/ttyACM0
connection = at

And for Bluetooth:

device = address of the phone
connection = blueobex
model = mobex

Of course there is no guarantee that any of the commands will work, because all I could verify is that code compiles and looks correct. It might as well do something bad to your phone, so backup is recommended.

Changed website

After last fixes during yesterday evening, I've decided to put new website online today. It matches layout of my blog, uses same technology underneath (Django).

The biggest change is probably simplification of the structure and also cleanup of old unused stuff. I tried not to miss anything, but I'm sure something will be discovered in next days.

With this change, I've also shutdown my SVN server as all things has been migrated either elsewhere (usually Debian's collab-maint SVN repository) or are now using Git either on Gitorious or repo.or.cz.

What things to flattr?

With increasing popularity of Flattr (114,057 € has gone through the Flattr system in two months), several people start to recommend what things to flattr. I'm not going into this business, however they seem so find interesting things for me so you might like it as well.

The Flattr Free and Open Source Software by Raphaël Hertzog is actually thing which has attracted me to the Flattr. It collects recommendations how to tag your free software on Flattr and each month it publishes five recommendations which projects to flattr.

The other thing I've noticed is list made each month by Evgeni Golov, which I've mostly noticed because increasing popularity of phpMyAdmin on Flattr, because he was really fast in advertising it :-).

Migrating documentation to Sphinx

While working on my new website, I've decided also to put documentation for Python modules into more pleasant format and use Sphinx for that.

As it can include docstrings automatically and writing text in rst is really easy, after few minutes, the photo-uploader documentation got migrated to photo-uploader manual, which indeed looks nicer that old man page + epydoc generated stuff.

Cleaning up the web

After recent switch of this blog to Django, I've also planned to switch rest of my website to use same engine. Most of the code is already written, however I've found some forgotten parts, which nobody used for really a long time.

As most of the things there is free software, I don't like idea removing it completely, however it is quite unlikely that somebody will want to use these ancient things. Especially when it quite lacks documentation and I really forgot about that (most of them being Turbo Pascal things for DOS, Delphi components for Windows and so on). Anyway it will probably live only on dl.cihar.com in case anybody is interested.