Construire GNOME Shell à partir des sources
(Dernière mise à jour du contenu: 11. février 2011, basée sur le guide officiel , n'hésitez pas à la modifier.)
0. Avertissements / erreurs lors de la compilation
GNOME Shell est en pleine phase de développement et les sources sont souvent mises à jour plusieurs fois par jour. Alors que les instructions ci-dessous devraient généralement fonctionner, il peut arriver qu'une compilation réussie nécessite quelques piratages ou ne soit pas du tout possible.
Si vous rencontrez des problèmes, vérifiez:
Problèmes actuels:
Il est nécessaire de supprimer quelques fichiers dans les répertoires de la bibliothèque, sinon la compilation échouera. Lors de la mise à jour du système, ces fichiers peuvent renvoyer: lisez ceci pour savoir pourquoi il est nécessaire de supprimer ces fichiers et comment empêcher les mises à niveau de les réinstaller.
sudo rm -rf /usr/lib*/*.la
(Pas d'inquiétude, cela ne nuira pas à votre système!)
Avant de pouvoir exécuter GNOME Shell, vous devez supprimer un fichier après le processus de construction:
rm ~/gnome-shell/install/lib*/gtk-3.0/modules/libcanberra-gtk-module.so
1. Construire GNOME Shell
(Testé sur Ubuntu 10.10 32 bits et la version de développement d'Ubuntu 11.04 64 bits.)
Ce qui suit téléchargera, compilera et installera GNOME Shell à la manière d’un bac à sable, ce qui signifie qu’il ne touchera pas le reste de votre système!
Installer des dépendances:
sudo apt-get install curl dpkg-dev autopoint libedataserverui1.2-dev \
libecal1.2-dev evolution-data-server-dev libcups2-dev libupower-glib-dev \
libgnome-keyring-dev libxklavier-dev libvorbis-dev libltdl-dev \
libgstreamer0.10-dev libcroco3-dev xserver-xephyr xulrunner-dev \
python-dev libpam0g-dev mesa-utils mesa-common-dev libxml2-dev \
libreadline5-dev libpulse-dev liborbit2-dev libgl1-mesa-dev libwnck-dev \
libtiff4-dev libstartup-notification0-dev libpng12-dev libjpeg62-dev \
libjasper-dev libgtop2-dev libgnome-desktop-dev libgnome-menu-dev \
libffi-dev libexpat1-dev libdbus-glib-1-dev icon-naming-utils \
gtk-doc-tools gnome-common git-core gettext flex bison automake cvs
Obtenez le script d'installation de GNOME Shell:
curl -O https://git.gnome.org/browse/gnome-shell/plain/tools/build/gnome-shell-build-setup.sh
Construisez l'outil de construction jhbuild
et téléchargez les fichiers de configuration:
/bin/bash gnome-shell-build-setup.sh
Cela installera jhbuild
à ~/bin
, que vous devez ajouter à votre PATH
-variable:
. ~/.profile
[Facultatif] : Vous pouvez modifier plusieurs jhbuild
options telles que le chemin du téléchargement des sources, etc. en modifiant le fichier ~/.jhbuildrc-custom
.
Démarrer le processus de construction:
jhbuild build
Cela compilera (actuellement) 33 modules. Prenez une tasse de café, faites une sieste -> cela prendra du temps.
Une fois que vous voyez que *** success *** [33/33]
vous avez terminé. Félicitations, vous venez de compiler GNOME Shell!
2. Lancer GNOME Shell
Si vous utilisez Compiz, vous devez d’abord l’arrêter (en lançant Metacity), sinon GNOME Shell ne démarrera pas:
metacity --replace &
Enfin, lancez:
cd ~/gnome-shell/source/gnome-shell/src
./gnome-shell --replace
Ça y est, espérons que vous devriez maintenant utiliser GNOME Shell.
3. Faire de GNOME Shell le gestionnaire de fenêtres par défaut
Dans Ubuntu 10.10, vous pouvez simplement remplacer le gestionnaire de fenêtres de la session GNOME en modifiant une clé GConf:
Créez un lanceur local .desktop pour GNOME Shell:
ln -s ~/gnome-shell/install/share/applications/gnome-shell.desktop ~/.local/share/applications/gnome-shell.desktop
Puis changez le gestionnaire de fenêtres de la session pour qu'il soit GNOME Shell:
gconftool-2 -s /desktop/gnome/session/required_components/windowmanager "gnome-shell" -t string
Pour annuler la modification, exécutez:
gconftool-2 -s /desktop/gnome/session/required_components/windowmanager "gnome-wm" -t string
Dans Ubuntu 11.04, le changement de la clé windowmanager ne semble pas fonctionner. Au lieu de cela, vous pouvez ajouter un nouvel élément de session que vous pouvez sélectionner dans l'écran de connexion GDM. Par conséquent, vous devez créer le fichier local .desktop comme ci-dessus, puis créer deux fichiers:
Un fichier de session /usr/share/gnome-sessions/sessions/gnome-shell.session
:
[GNOME Session]
Name=gnome-shell
Required=windowmanager;
Required-windowmanager=gnome-shell
DefaultApps=gnome-settings-daemon;
L'élément de session pointant sur le fichier de session /usr/share/xsessions/gnome-shell.desktop
:
[Desktop Entry]
Name=GNOME Shell
Comment=This session logs you into Ubuntu
Exec=gnome-session --session=gnome-shell
TryExec=gnome-session
Icon=
Type=Application
X-Ubuntu-Gettext-Domain=gnome-session-2.0
Déconnectez-vous et vous devriez pouvoir choisir GNOME Shell comme session.
4. Mise à jour de GNOME Shell
Fonctionnement
jhbuild build
devrait mettre à jour les sources et reconstruire ce qui est nécessaire.
Si cela échoue pour un module, par exemple, vous obtenez quelque chose comme ceci:
fatal: git-write-tree: error building trees
Cannot save the current index state
*** Error during phase checkout of gdk-pixbuf: ########## Error running git stash save jhbuild-stash *** [7/33]
vous pouvez ensuite essayer d’effacer le répertoire du module actuel et de commencer avec des sources propres en choisissant l’option 6:
[6] Go to phase "wipe directory and start over"
Si cela ne vous aide pas, vous pouvez commencer à partir de zéro en lançant:
jhbuild build -afc
Toujours pas compiler? Ensuite, vérifiez les endroits mentionnés dans 0.