This page is step-by-step guide to have Hildon Desktop running outside of the Maemo / scratchbox environment. Our major goal here is to make it easy for distributons to package Hildon Desktop so that developers can have a quick-to-setup environment for the development of plugins which doesn't need to be built against ARM such as Python plugins. For now, this guide applies to Ubuntu.

Known issues

  • The Maemo GTK+ version is still needed to get all the functionality working, most notably tap-and-hold. That being said, you can build the hildon-desktop with stock GTK+ using the --with-maemo-gtk=no configure flag in the relevant modules. (NOTE: is this true for all modules? with the same flag? what should the default be?)
    • TommiKomulainen: I think the default should be 'auto' and there should be an easy way to check for maemo-gtk presence (pkg-config --exists gtk+-maemo-2.0 maybe? For now checking for hildon_gtk_im_context_show would be fairly easy.)

      • MurrayCumming: Yes, I really like the idea of having an extra .pc file to detect this. This would make it easier to use the regular maemo module definitions in jhbuild, because we wouldn't need special build options for modules above GTK+.

  • No repository for the icon theme.
  • Need to create a different user to have everything working

Building Hildon Desktop

First, install the packages from Ubuntu which are dependencies for Hildon Desktop and other modules involved.

sudo aptitude install build-essential subversion automake1.7 automake1.8 automake1.9 check xserver-xephyr libtiff4-dev libxml-dev libgnomevfs2-dev libgconf2-dev xlibs-dev libesd0-dev dbus-glib-1-dev libdbus-glib-1-dev

sudo apt-get build-dep libgtk2.0-0

To create the target directory, run:

sudo mkdir /opt/hildon
sudo chown YOUR_USER:YOUR_GROUP /opt/hildon

Jhbuild process

Install jhbuild:

svn co jhbuild
cd jhbuild
make install

This will install jhbuild tool in ${HOME}/bin by default. If you want it to be installed somewhere else, edit "Makefile" in jhbuild source tree and change the bindir variable. Also add this directory to your $PATH for convenience.

Grab the Jhbuild files for Hildon Desktop.

svn co

Adjust hildon-desktop.jhbuildrc in jhbuild_modules to fit your environment if needed. For example, you probably want to change the "checkoutroot" value to something different. By default it will grab the source code from repositories to ${HOME}/Code/hildon.

Run jhbuild like this:

cd jhbuild_modules
jhbuild -f ./hildon-desktop.jhbuildrc -m ./hildon-desktop.modules build

Running Hildon Desktop

To run the Hildon Desktop simply start a jhbuild shell and run the script:

jhbuild -f ./hildon-desktop.jhbuildrc shell

There are some problems on running Hildon Desktop with the user of the current desktop session. The background manager of Hildon Desktop is a D-Bus service which will use the dbus-daemon for current session. What happens is that for this running dbus-daemon the DISPLAY and XDG_DATA_DIRS (where to look for dbus services) are already defined.

If you run hildon-session with a different user then a brand new dbus-daemon will run with the correct environment variables. So, it's suggested that you create another user (Ex: hildon) for testing Hildon Desktop.

Python Support

First, install the python related distribution packages:

sudo aptitude install python python-dev python-gtk2 python-gtk2-dev python-gobject python-gobject-dev

Grab the Hildon Desktop python support module, build and install. As you will use the Python installed on your system, you'll need use "sudo" to install it.

svn co
cd python-hildondesktop
./configure --prefix=/opt/hildon
sudo make install

Get and install some example plugins to play with:

svn co
cd example-plugins
./configure --prefix=/opt/hildon --enable-python
make install

Attic/Hildon/Building (last edited 2013-11-20 08:03:07 by WilliamJonMcCann)