HildonDesktopGutsyManualProcedure

Revision 9 as of 2007-06-26 00:50:24

Clear message

Procedure to have the Hildon Desktop running on Gutsy

This is the step-by-step procedure to have the Hildon Desktop that will be used in the Ubuntu Mobile and Embedded project.

Warning: Albeit possible, having the mobile system running in a normal Gutsy installation is more probable to cause problems, specially in these early stages of development therefore, it's safer to have a chroot environment, which is what described below.

Preparing the base environment

  • Prepare a gutsy chroot in ${DIR}:
     $ sudo debootstrap gutsy ${DIR} http://archive.ubuntu.com/ubuntu
     $ sudo mount --bind /tmp ${DIR}/tmp
     $ sudo mount -t proc none ${DIR}/proc
     $ sudo mount --bind /sys ${DIR}/sys
  • Everything should be ready, so:
     $ sudo chroot ${DIR}

Packages

Those are the basic packages needed to actually have the environment.

  • hildon-desktop
  • hildon-theme-plankton
  • gtk2-engines-sapwood
  • sdk-default-icons
  • dbus-x11
  • language-pack-en
  • matchbox

The meta-package ubuntu-mobile provides all the necessary packages and it's dependencies so, inside the chroot:

  • Add the universe repository to /etc/apt/source.conf.
  • Update the repositories and install ubuntu-mobile.

Development packages

Those are packages that are likely to be used when developing applications using the environment above so you can have the hildon desktop shown in your normal desktop.

  • xserver-xephyr

Preparation

  • Create a normal user inside the chroot.
  • Prepare the startup script.
     #!/bin/bash
     
     PREFIX=/usr
     THEME=${PREFIX}/share/themes/plankton
    
     export DISPLAY=:1
    
     export GTK2_RC_FILES=${THEME}/gtk-2.0/gtkrc:${THEME}/gtk-2.0/gtkrc.maemo_af_desktop
     export LANG=en_GB.UTF-8
     export LC_ALL=en_GB.UTF-8
     export LANGUAGE=en_GB.UTF-8
    
     exec /usr/lib/libgconf2-4/gconfd-2 &
    
     exec ${PREFIX}/bin/matchbox-window-manager -display ${DISPLAY} \
                                               -theme ${THEME}/matchbox/theme.xml \
                                               -use_titlebar yes \
                                               -use_desktop_mode plain \
                                               -use_lowlight no \
                                               -use_cursor yes \
                                               -use_super_modal yes &
    
     exec ${PREFIX}/lib/sapwood/sapwood-server &
    
     exec ${PREFIX}/bin/hildon-desktop
  • Edit /etc/hildon-desktop/desktop.conf and remove or comment out the [Statusbar] session if necessary.

Running

  • Enter the chroot and su - to the user created above. That will start the dbus session.
  • Outside the chroot execute Xephyr like this:
     Xephyr :1 -host-cursor -screen 800x480x16 -dpi 96 -ac
  • Execute the hildon-desktop script as the user you created above.

As result, you should see the hildon desktop inside the Xephyr window.