Nov 29, 2008

Installing GNOME Shell in Ubuntu Intrepid

Siegfried Gevatter did a blog post on how to build and test the development version of the GNOME shell. Luckily for us, Siegfried decided to write down all the instructions on how to build it so that others have it easier than he did.

Initial build of GNOME Shell

1. Download (wget and run it (bash This will download jhbuild into ~/Source and build it (the executables will end up in ~/bin).

2. Install the necessary build dependencies for gnome-shell (and its bundled dependencies): sudo apt-get install build-essential automake gnome-common flex bison curl git-core subversion gtk-doc-tools mesa-common-dev xulrunner-1.9-dev libdbus-glib-1-dev libffi-dev libgconf2-dev libgtk2.0-dev libgl1-mesa-dev libgstreamer-plugins-base0.10-dev python2.5-dev.

3. Download and build gnome-shell (and its bundled dependencies) by running ~/bin/jhbuild build. All files are placed into ~/gnome-shell.

Running it

1. Run ~/bin/jhbuild shell to enter a subshell, and then follow the remaining steps inside it.

2. Go into the appropriate directory, with: cd ~/gnome-shell/source/gnome-shell/scripts.

3. Start gnome-shell, either inside a window by using Xephyr: ./start-in-Xephyr (you’ll need to have xserver-xephyr installed for this to work, or replacing gnome-panel and metacity in your “real” desktop: ./start-replace.

Updating it

Execute ~/bin/jhbuild build –force –clean. The two arguments, “–force” and “–clean”, are used to rebuild everything, even if it didn’t change. You can usually omit them, but in some cases not doing this may lead to GNOME Shell failing to start.

You can also rebuild only a certain element (with this I mean either gnome-shell or one of its bundled dependencies, namely clutter, gjs, gobject-introspection, gir-repository or metacity-clutter) by using ~/bin/jhbuild buildone –clean.

Problem: My computer hangs if I run it

Like the new Compiz version in Intrepid, gnome-shell uses GL_EXT_texture_to_pixmap, which is broken for some old Intel cards and causes the computer to hang if start-replace is used. You can easily disable this, though, by setting the GNOME_SHELL_DISABLE_TFP environment variable (the name of this variable may change in the future).

So, just run echo “GNOME_SHELL_DISABLE_TFP=1″ | tee -a ~/.bashrc, restart your terminal and follow the steps described in section “Running it”. Wih this, gnome-shell should be able to run so that you can try it out, but don’t expect its performance to be perfect (here I have serious issues with redrawing).



  1. If you get

    No package 'xscrnsaver' found

    you need to install libxss-dev

  2. I was wondering if the commands are the same for jaunty

  3. one of the problems that I got was when I tried to run the script and got this message.

    PATH does not contain /home/ubuntu/bin

    I tried to add it by PATH=/home/ubuntu/bin and it didn't work. if you could help that would be great.

  4. i guess it should be '~/bin/jhbuild build --force --clean' in the update section.

  5. Using this guide, I was able to get gnome-shell working perfectly on my Jaunty 64bit machine.

    A couple steps that I had to do differently -
    After running jhbuild, there were no more steps that I had to complete. In addition, instead of typing './start-replace' I simply used 'gnome-shell --replace' (usable from any location on my machine).

    Thanks for this easy guide!

  6. i keep getting the error:

    *** error during stage configure of gnome-shell: ########## Error running ./ --prefix /home/aj/gnome-shell/install --libdir '${exec_prefix}/lib64' --disable-static --disable-gtk-doc *** [7/7]

  7. i have installed it with ubuntu software package but i cant run it how do i run it.....

  8. When I run ~/bin/jhbuild build

    I get this error

    Traceback (most recent call last):
    File "/home/kvergos/Source/jhbuild/jhbuild/", line 117, in load
    execfile(self.filename, config)
    File "/home/kvergos/.jhbuildrc", line 1

    SyntaxError: invalid syntax
    jhbuild: could not load config file

    Any help ?

  9. As Fwip said, run it by typing

    gnome-shell -r

    in terminal.