KDE Mobile/Meego development with KDE: Difference between revisions
(add note about workaround to get antialiased fonts) |
m (moved Meego development with KDE to KDE Mobile/Meego development with KDE: the meego development effort in inside the mobile umbrella) |
(No difference)
|
Revision as of 15:02, 26 November 2010
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.
KDE on MeeGo Community OBS
We use the MeeGo community build service (https://build.pub.meego.com/) for KDE packaging.
Since it does not support team repositories yet, we use Mek's personal repository as the official KDE repository for now: https://build.pub.meego.com/project/show?project=home%3Amkruisselbrink%3Akde
Add the repo like this as root:
zypper ar -f http://repo.pub.meego.com/home:/mkruisselbrink:/kde/meego_1.1_core/ mek-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.
- log in to https://build.pub.meego.com/ once (necessary for the following step to succeed).
- 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 home:mkruisselbrink:kde
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).