Projects/Mobile/Meego development with KDE: Difference between revisions

From KDE TechBase
m (Text replace - "</code>" to "</syntaxhighlight>")
 
(6 intermediate revisions by 3 users not shown)
Line 51: Line 51:
We use the MeeGo community build service (https://build.pub.meego.com/) for KDE packaging.
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.
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


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 ===
=== How to get an account ===
Line 62: Line 64:


* 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 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)
* 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 ====
<syntaxhighlight lang="bash">
zypper install osc
</syntaxhighlight>
Edit the ''apiurl'' line in ''~/.oscrc'' to:
<syntaxhighlight lang="ini">
apiurl = https://api.pub.meego.com
</syntaxhighlight>
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
<syntaxhighlight lang="bash">
osc checkout home:mkruisselbrink:kde
</syntaxhighlight>
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).

Latest revision as of 20:57, 29 June 2011

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.
  • 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).