KDE Mobile/Meego development with KDE

From KDE Community Wiki

This is a page to help developers get up and running for KDE development on Meego.

Beginning Links

use Xephyr if you have an Intel graphics card, else use Qemu:

how to use QtCreator to build meego software

Maemo, not Meego:

http://wiki.maemo.org/Documentation/Maemo_5_Final_SDK_Installation

Getting Started

There are three ways to get a full MeeGo GUI running:

  • using QEMU (emulating a device)
  • using Xephyr (using a chroot)
    • Note: only works if you have an Intel graphics card.
  • using a real device


To build stuff you can either use one of the above three options, or as a fourth (and probably) easier option, you can use qt-creator with madde and its Meego plugin. A problem with this is that there apparently is something wrong if you try to use libmeegotouch.

Using QEMU

If you don't have an Intel graphics card you need to use this method.

Using Xephyr

  • Use xhost: set it to allow connections to everyone from everywhere if you have problems, yes this is bad security "xhost +"
  • In chroot, to be non-root, su to user "meego".
  • It has a small partition, but you can mount external things via:

mount --bind <source> <path/to/chroot/target>

Using a real device

Dynamic Languages

This is based off an article on The Irish Pengiun, I've put together the following how-to to get Qt Ruby working on Meego. Note, to aid in rapid development, we'll be using the netbook edition.

VirtualBox

First, get VirtualBox OSE installed on your system. Once that is installed, download the Meego 1.0 Netbook image.

Virtual Keyboard

For instructions to get the MeeGo VTK see http://wiki.meego.com/Input_Method_Framework/MeeGo_1.1#Netbook

Currently (Feb 2011) has dependencies on MeeGoTouch, but soon will be reduced to Qt-only. MeeGo VTK developers are open for collaboration!

KDE on MeeGo Community OBS

We use the MeeGo community build service (https://build.pub.meego.com/) for KDE packaging. There we have own KDE repositories, for now used is: https://build.pub.meego.com/project/show?project=Project%3AKDE%3ADevel

Add the repo like this as root (here for a MeeGo 1.1 system):

zypper ar -f http://repo.pub.meego.com/Project:/KDE:/Devel/MeeGo_1.1_Core/ project-kde

How to get an account

(See also http://wiki.meego.com/Build_Infrastructure/Packagers_Developers#How_to_get_started for official guideline)

  • get an account on meego.com (you probably have one already if you were at the MeeGo conference, it's the same as the conference account)
  • ask a guy named 'lbt' on '#meego' on Freenode to activate your account for the community OBS. Tell him your meego.com user name for that.
  • ask a member of the KDE MeeGo OBS project to add you to the project (e.g. Mek, Artur, Marco, Volker, full list available at the above repo link)

How to access the KDE repository with osc

Initial setup

zypper install osc

Edit the apiurl line in ~/.oscrc to: apiurl = https://api.pub.meego.com

Now run osc list and follow instructions to fill in username and password. You should see a full repository listing there, to confirm the setup was successful.

Now checkout the KDE repository using

osc checkout Project:KDE:Devel

This will take a while and download all our package sources, so have some disk space available. Downloading just some packages is probably possible as well, but we assume in the following you have a full checkout.

Adding and Maintaining Packages

osc works quite similar to Subversion, most commands should thus look very familiar (update, add, diff, commit, etc). To modify existing packages, just edit the .spec file and add/modify the corresponding sources if necessary and commit the result. The OBS will then automatically try to build new packages (both for the one you just modified and for all dependencies).

Working around problems

Fonts are not antialiased

Put the .fonts.conf from http://bugs.meego.com/show_bug.cgi?id=10258 in your home directory (applies to all Qt programs, not just KDE ones).

Wifi is lost on zypper update

See http://slaine.org/_slaine/Meego_1.1_Wifi.html