KDE Mobile/Meego development with KDE: Difference between revisions

From KDE Community Wiki
m (moved Meego development with KDE to KDE Mobile/Meego development with KDE: the meego development effort in inside the mobile umbrella)
m (fix wiki syntax messing with content)
 
(3 intermediate revisions by the same user not shown)
Line 36: Line 36:
*In chroot, to be non-root, su to user "meego".
*In chroot, to be non-root, su to user "meego".
*It has a small partition, but you can mount external things via:
*It has a small partition, but you can mount external things via:
mount --bind <source> <path/to/chroot/target>
<code bash><nowiki>mount --bind <source> <path/to/chroot/target></nowiki></code>


==Using a real device==
==Using a real device==
Line 46: Line 46:
=== VirtualBox ===
=== VirtualBox ===
First, get VirtualBox OSE installed on your system. Once that is installed, download the Meego 1.0 Netbook image.
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 ==
== KDE on MeeGo Community OBS ==


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. There we have own KDE repositories, for now used is:
https://build.pub.meego.com/project/show?project=Project%3AKDE%3ADevel


Since it does not support team repositories yet, we use Mek's personal repository as the official KDE repository for now:
Add the repo like this as root (here for a MeeGo 1.1 system):
https://build.pub.meego.com/project/show?project=home%3Amkruisselbrink%3Akde


Add the repo like this as root:
<code bash>
zypper ar -f  http://repo.pub.meego.com/home:/mkruisselbrink:/kde/meego_1.1_core/ mek-kde
zypper ar -f  http://repo.pub.meego.com/Project:/KDE:/Devel/MeeGo_1.1_Core/ project-kde
</code>


=== How to get an account ===
=== How to get an account ===
Line 86: Line 94:


<code bash>
<code bash>
osc checkout home:mkruisselbrink:kde
osc checkout Project:KDE:Devel
</code>
</code>


Line 100: Line 108:


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

Latest revision as of 16:43, 8 September 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.

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