Martin Kolman - activity overview


I've got my Bachelors on the Faculty of Informatics of the Masaryk University in Brno with bachelors thesis on the topic ofFlexible GPS Navigation for Mobile Devices with Linux OS. I've started the development of modRana while working on this thesis.

I'm currently working on my masters thesis called Comparison of today's mobile Linux distributions. My supervisor for both my bachelors and masters thesis is Aleš Horák.



I've been using Linux for many years at home & at school and I've also helped other users in need. :) I have also absolved multiple Unix/Linux courses on the university.


I use Python for all my projects and would say than I'm quite well versed in it already. :)

GUI toolkits


The classic modRana GUI is based on Cairo & GTK. It is still the main GUI on the Maemo 5 Fremantle platform and on the desktop and I'm still maintaining it and adding new features.

Qt & QML

As most new mobile Linux devices don't suport GTK at all, I've also started working on an alternative modRana GUI based on Qt & QML. The QML GUI is currently the main GUI for Harmattan. ModRana supports GUI module selection at startup, so it is possible to run both on the same device. :)

Al my other end-user applications use Qt & QML for their GUIs.


When I started working on Mieru, QML was no where it is now, so I've used Clutter for it's GUI. While not the default GUI any more, I still maintain it and it used as a fallback in case the QML GUI is not available for some reason.


The first packaging format I got into contact with was Ipkg, while working on modRana packages for the Neo FreeRunner open source smartphone.

Then I've learned how to do Doebin packaging and have written automated packaging scripts for publishing modRana & Mieru to the Maemo repositories.

And I've added OBS to my workflow for Harmattan packaging. I've also used OBS for my GTK & PyGTK port for Harmattan. And recently I've helped to include PySide packages to the main Nemo library OBS project.

I'm currently learning RPM packaging, so that I can create Nemo & Jolla (once released) packages of my applications.

On a related Note to packaging, my application hosted in the Nokia store already got more than 17 thousand downloads while list more than 470 thousand downloads for modRana. :)


I really like GIT and I'm using it to manage the code of all my projects. My Github repository list is getting quite long lately. :)


I'm using the wiki on to document modRana and my work on it and I've also contributed to the & OpenStreetMap Wikis with articles about my projects & related matters.


My experience with localization started after merging localization support patches from a German developer to Mieru. Since then I've written the Czech Mieru localization, created a Mieru translation project on Transifex and written some scripts that automate translation updates from/to Transifex.

The ease of use Transifex certainly helped to attract translators. As a result, Mieru has been so far translated to 8 languages, including for example Chinese, Vietnamese, Russian or Finnish.



ModRana is a flexible navigation system for Mobile devices. It can show various map layers, manage POI, search for amenities, addresses or Wikipedia articles and has a powerful command-line interface, that exposes many of its features to third party applications. This interface is already in use by Saera for voice triggered amenity & weather search.

ModRana supports both online and offline routing (using the Monav backend) & provides multilingual voice directions turn-by-turn.

ModRana took part in many coding competitions and most recently won the 1st place in the Coding Competition 2012.

core: Python
classic GUI: Python + GTK
QML GUI: Python + Qt + QML
packaging : shells scripts + Python (setuptools) + OBS

source code repository:
Maemo package:
main discussion thread:

modRana data repository

The modRana data repository is a server application, that generates navigation data packages from OpenStreetMap data for use by modRana and other compatible navigation systems.

The data repository development started after support for Monav offline routing was added to modRana. The users need up-to-date routing data packs to use this and the data repository is there to generate and host them. It currently generates & hosts only Monav routing data packs, but its architecture is prepared for seamlessly adding support for handling other data packages.

The repository (re)generation is fully multi-threaded, so that, if running on suitable hardware, even a global data update takes just a few hours. For example, global Monav routing data generation takes less than 4 hours on a 48 core Opteron server (including data downloads & result packaging).

Many thanks to the Natural Language Processing Center @ Faculty of Informatics, Masaryk University for providing computational resources and hosting for the main repository instance! :)


source code repository:
main repository instance:

Monav data generator

A simple script for Monav routing data generation. I takes one OSM data pack (in .osm or .pbf) and generates a folder with Monav routing data from it.


source code repository:


Mieru is a flexible manga & comic book reader. It supports all relevant formats & has a nice UI. Mieru has been translated to Many languages and is available from the Nokia store.

architecture: Python + QML
(old interface: Python + GTK + Clutter)

source code repository:
Nokia Store:
main discussion thread:


RePho is a flexible re-photography tool.

architecture: Python + Qt + QML

source code repository:
Nokia Store:


Panora helps to capture photos for further panorama processing.

architecture: Python + Qt + QML

source code repository:
Nokia Store:

Coding competitions

Maemo Coding Competition 1 (2010)

3rd place with modRana in the Location & Navigation category.

results table

MeeGo Coding Competition 2011

2nd place with modRana in the Location & Navigation category.

results table Coding Competition 2012

1st place with modRana in the Updates & Development on Existing Apps category.

results table

Be Qt

3rd place with RePho.

Be Qt : Summer Contest

6th place with Panora.

Developer programs

MeeGo 1.2 Harmattan

I've been accepted to the Harmattan and received a Nokia M950 developer device. I have since then ported Mieru & modRana to Harmattan and developed the RePho? and Panora Harmattan applications.

Tizen Developer program

I have been accepted to the Tizen developer program and received the Tizen "Lunchbox" developer device. I'm currently working on modRana & Mieru port to Tizen.

Past RedHat/Fedora involvement

I've visited many interesting RedHat organized events in the past (Software Freedom day, Openhaus, Tower talks, Fedora release party, Devconf,...). I've also got the first place in Quiz on the Fedora 17 release party in Brno & got a nice RedHat + Fedora flash drive as a result! :)

I've also taken part on Fedora test days (as MartinK or Martin Kolman):

Fedora 17

Fedora 18


I've also already filled some minor bugs to the RedHat bugzilla - mostly as a result of my participation on the Power Management Testday.


Openmobility 2010 in Zlin

I had a talk about current OSS navigation systems. I have also officially introduced the modRana project for the first time.

Openmobility 2011 in Brno

I talked about modRana and the development in the GPS navigation area since last year. I lead a Python & Clutter development workshop.

State of the Map EU in Vienna

I held a short unplanned lightning talk about modRana during the conference.

Openmobility 2012 in Prague

I held one talk & one workshop. The talk was on the topic of Comparison of todays mobile Linux distributions and was followed by the Developing mobile applications with QML & PySide workshop.



I have written multiple articles for the web portal of the Openmobility organization.


(The articls about modRana, Mieru and RePho were also published in the Summer 2012 edition of openMagazin.)

Last modified 12 years ago Last modified on Nov 8, 2012, 5:11:27 PM