Потратил пару недель на изучение того, как вообще пишется нативный GUI под Linux, и как он пишется конкретно под Moblin.
Конечно, под Moblin будут запускаться обычные GTK+ приложения, но они будут выглядеть слишком сурово. Чтобы всё было moblin-style, надо использовать Clutter и NBTK (NetBook ToolKit). Clutter для всех этих красивых 2d и 3d эффектов, а NBTK для (пока) немногочисленных виджетов GTK+, которые выглядят нативно для Moblin. Для определения стиля виджета используется CSS, т.е. вид любой кнопки (и прочего) можно довольно гибко настроить.
К сожалению, писать можно только на голом Си. Вообще, для Clutter был Python binding, но сейчас API нестабильный, и пока Clutter не станет версии 1.0, стабильным он не станет. Значит, до версии 1.0 никакого Питона.
Писать на Си я не хочу. Меня развратили Java и PHP, снова заниматься приведением типов, ловить ошибки выделения памяти и следить за указателями я не хочу. Поэтому только Python. Значит, на ближайшее время разработка под Moblin откладывается.
Но, задуманное приложение можно просто написать на GTK+, и позже задействовать магию Clutter’а. Для этой цели уже подходит Python, для которого есть биндинги ко всем GUI-библиотекам на свете. Среди них: PyGTK для нативного GUI в Linux, PyObjC для нативного GUI в Mac OS X, ну и для Windows наверное тоже что-то есть.
Мне очень нравится идея фреймворка wxWidgets, который позволяет однажды написанному коду выглядеть нативно на всех платформах. В противоположность, например, Qt или XULRunner, которые выглядят одинаково на всех платформах (в комментариях меня поправили, Qt тоже выглядит нативно).
В задуманном приложении мне нужен внедрённый браузер. И вот тут идея использовать wxWidgets рассыпается. Существуют проекты wxWebKit и wxMozilla. Первый в разработке (его можно собрать, если очень постараться), а второй устарел и не дорабатывается.
Остаётся писать GUI отдельно для каждой платформы, используя родной браузер. Для Linux: PyGTK, Hulahop (PyGTK виджет для Gecko). Для Mac OS X: PyObjC, в него встроена поддержка WebKit. Ну, и для Windows тоже наверное что-то есть. Всё это обладает тем плюсом, что его не надо собирать из исходников, оно ставится более-менее стандартным способом, с минимумом проблем на свою голову.