JHBuild et GNOME

Cette section fournit des indications sur la compilation, l'installation et le fonctionnement de GNOME.

III.I. Construction de GNOME

Pour compiler GNOME, certains paquets de développement sont nécessaires, notamment :

  • La DTD DocBook XML et les feuilles de styles XSLT. Elles doivent être enregistrées dans le catalogue XML (/etc/xml/catalog).

  • X libraries.

  • libsmbclient de Samba (utilisé pour parcourir les réseaux Windows).

  • libbz2 de bzip2.

  • libpng, libjpeg et libtiff (utilisés pour le chargement d'images).

Si vous installez des paquets de votre distribution et si cela s'applique à votre distribution, installez les paquets « dev » ou « devel » correspondants. Une liste de noms de paquets de différentes distributions est disponible sur le wiki de GNOME.

III.II. Lancement d'une application GNOME unique

Cette section décrit comment lancer une seule application GNOME. L'application se lance dans l'environnement de bureau actuel. Pour lancer une application dans le contexte d'un GNOME JHBuild complet, consultez Section III.III ― Lancement de l'environnement de bureau GNOME.

Exécutez un shell JHBuild. Ce shell dispose de toutes les variables d'environnement nécessaires déjà configurées.

$ jhbuild shell

Vérifiez que la bonne application va être lancée. Par exemple :

$ which gedit
/home/wanda/jhbuild/install/bin/gedit

lancez l'application :

$ gedit &

Il est aussi possible de lancer l'application en utilisant la commande run :

$ jhbuild run gedit

III.III. Lancement de l'environnement de bureau GNOME

Create a new user account to run the JHBuild GNOME. Running JHBuild GNOME using a different user account is recommended to avoid problems caused by user settings stored in the home directory. This manual refers to the new account as gnomedev.

Setup JHBuild on the new gnomedev account. Copy or soft-link ~/.config/jhbuildrc and ~/.local/bin/jhbuild to gnomedev home directory.

Ouvrez un terminal en tant qu'utilisateur gnomedev. Ajoutez ~/.local/bin de façon permanente à la variable PATH en exécutant la commande suivante :

$ echo 'PATH=$PATH:~/.local/bin' >> ~/.bashrc

Testez que JHBuild fonctionne :

$ jhbuild run pkg-config gtk+-2.0 --modversion
2.20.1

III.III.I. Configuration de GNOME en mode « gestionnaire d'affichage »

Compilez et installez GNOME JHBuild.

Enable system services. JHBuild GNOME will use the /usr/bin system D-Bus daemon and the system services within /usr/share/dbus-1/system-services/. JHBuild GNOME will use the JHBuild session D-Bus daemon and the services within ~/jhbuild/install//share/dbus-1/services/. Replace ~/jhbuild/install with GNOME install prefix in the command below:

$ rm -rf ~/jhbuild/install/var/run/dbus
$ ln -s /var/run/dbus ~/jhbuild/install/var/run/dbus
$ rm -rf ~/jhbuild/install/var/lib/dbus/machine-id
$ ln -s /var/lib/dbus/machine-id ~/jhbuild/install/var/lib/dbus/machine-id

Create a GNOME startup script at /usr/bin/gnome-jhbuild-session with the following, replacing ~/jhbuild/install with GNOME install prefix:

#!/bin/sh

GNOME=~/jhbuild/install

GDK_USE_XFT=1
XDG_DATA_DIRS=$XDG_DATA_DIRS:$GNOME/share
XDG_CONFIG_DIRS=$XDG_CONFIG_DIRS:$GNOME/etc/xdg

jhbuild run gnome-session

Rendez exécutable le fichier /usr/bin/gnome-jhbuild-session :

$ chmod a+x /usr/bin/gnome-jhbuild-session

Pour ajouter une nouvelle entrée de session dans le gestionnaire d'affichage, créez le fichier /usr/share/xsessions/gnome-jhbuild.desktop avec un contenu semblable à ceci :

[Desktop Entry]
Name=GNOME (JHBuild)
Comment=Cette session vous connecte dans une session GNOME de test
Exec=/usr/bin/gnome-jhbuild-session
Icon=
Type=Application

Redémarrez gdm.

III.III.II. Lancement de GNOME depuis le gestionnaire d'affichage

To run the JHBuild GNOME, select the GNOME (JHBuild) session at the display manager before entering gnomedev login credentials. If successful, JHBuild GNOME will be displayed. If unsuccessful, check the log file. The log file will be located at ~gnomedev/.cache/gdm/session.log or ~gnomedev/.xsession-errors.

III.IV. Static Analysis

JHBuild supports running static analysis tools on the code in modules as they’re built. To enable this, set the static_analyzer configuration variable to True in the .jhbuildrc configuration file.

If enabled, every time a module is built using JHBuild, the build process will be wrapped in a static analyzer, which will generate a report of any problems it finds with the code. These reports are saved as HTML files in subdirectories of /tmp/jhbuild_static_analyzer (by default; the path can be changed using the static_analyzer_outputdir configuration variable).

Static analysis currently only works for modules which use autotools as their build system. It requires the scan-build program to be installed, although the command it uses can be changed by modifying the static_analyzer_template configuration variable.