InstallationGuide

Revision 23 as of 2010-11-16 10:22:17

Clear message

Unity Installation Guide

This page documents how you can try out Unity 3.0 on your Ubuntu system.

Note: This software is pre-alpha. You should be comfortable with being able to downgrade multiple packages if you want to go back to a stable desktop, otherwise we recommend not trying this on a production machine. Alpha 1 will have a more stable version.

Limitations and Tips

  • 32 bit users will experience major glitches until the next PPA update.
  • This version of Unity does NOT have Places or the Dash, these will come back for Alpha 2.
  • It's normal that clicking on the Ubuntu button does nothing.
  • The session to log in in GDM is now "Ubuntu Desktop"
  • For now, be sure to use Humanity or Humanity-Dark icon themes. Others will cause Unity 3.0 alpha to crash.

Natty PPA

Unity is available in the Unity PPA.

sudo add-apt-repository ppa:unity/ppa
sudo apt-get update
sudo apt-get install unity

Then restart Compiz or log out and log back into your desktop session. Finally start CompizConfig Settings Manager (/usr/bin/ccsm) and then search for and enable the Unity plugin!

Natty from source

You'll need a fully updated Natty system, with the latest compiz and bamfdaemon packages installed.

You'll then need to do do this:

sudo apt-get install libglib2.0-dev libgdk-pixbuf2.0-dev libcairo2-dev libpng12-dev libglew1.5-dev  libglewmx1.5-dev libxxf86vm-dev libgl1-mesa-dev libsigc++-2.0-dev libpango1.0-dev doxygen cmake build-essential debhelper pkg-config valac intltool libgee-dev libunique-dev libclutter-1.0-dev libclutter-gtk-0.10-dev libclutk-dev libbamf-dev gsettings-desktop-schemas-dev libgconf2-dev  libglib2.0-dev libdbusmenu-glib-dev libgnome-desktop-dev libgtk2.0-dev libpango1.0-dev libgnomeui-dev libdee-dev libindicator-dev  libunity-misc-dev libutouch-grail-dev libxcb-icccm1-dev compizconfig-settings-manager compiz-dev libboost-dev libboost-serialization-dev libmetacityprivate-dev 

to get all the dependencies.

You'll need to build compiz manually as well - but first one library that Unity depends on but isn't yet packaged in Natty called Nux:

bzr branch lp:nux
cd nux
./autogen.sh --disable-documentation --prefix=/opt/unity
make
sudo make install

and then Compiz with the glib mainloop integration patch (will go into core at some point)

core:

git clone git://git.compiz.org/users/dbo/compiz-with-glib-mainloop
cd compiz-with-glib-mainloop
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
make
sudo make findcompiz_install
sudo make install

exporting paths:

export PKG_CONFIG_PATH=/opt/unity/lib/pkgconfig:${PKG_CONFIG_PATH}
export LD_LIBRARY_PATH=/opt/unity/lib:${LD_LIBRARY_PATH}
export LD_RUN_PATH=/opt/unity/lib:${LD_RUN_PATH}

libcompizconfig:

git clone git://git.compiz.org/compiz/compizconfig/libcompizconfig
cd libcompizconfig
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
make
sudo make install

compizconfig-python:

git clone git://git.compiz.org/compiz/compizconfig/compizconfig-python
cd compizconfig-python
python setup.py install --prefix=/opt/unity

ccsm:

git clone git://git.compiz.org/compiz/compizconfig/ccsm
cd ccsm
python setup.py install --prefix=/opt/unity

plugins-main:

git clone git://git.compiz.org/compiz/plugins-main
cd plugins-main
git submodule init
git pull origin master
git submodule update
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
make
sudo make install

plugins-extra:

git clone git://git.compiz.org/compiz/plugins-extra
cd plugins-extra
git submodule init
git pull origin master
git submodule update
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
make
sudo make install

and then Unity:

bzr branch lp:unity
cd unity
mkdir build; cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug -DCOMPIZ_PLUGIN_INSTALL_TYPE=package -CMAKE_INSTALL_PREFIX=/opt/unity
make
sudo make install

unsetting paths:

unset PKG_CONFIG_PATH
unset LD_LIBRARY_PATH
unset LD_RUN_PATH

add this to your /home/$USER/.bashrc

function compiz-unity-setup-env
{
    export PATH=/opt/unity/bin:${PATH}
    export PYTHONPATH=/opt/unity/lib/python2.6/site-packages
}

and finally, once that's installed, you can log out and log in and again and then run compiz-unity-setup-env and then restart Compiz (compiz --replace ccp) and then use CompizConfig Settings Manager (ccsm) to search for and enable the Unity plugin!

Maverick PPA

Coming Soon

Maverick from source

Exactly the same as above in Natty, but you'll first need Compiz 0.9.2 patched with glib support. There aren't any packages yet but there is a build script for it in the unity source under the "tools/" directory. After installing that, make sure to update you PKG_CONFIG_PATH and you can then follow the same instructions as Natty.

What to do when it Crashes

As this is prealpha code it can crash sometimes, unchecking the Unity plugin in CCSM will stop unity from running.

ccsm.png

Where to file bugs

Please follow this guide for filing bugs.

How to Contribute to Unity

http://unity.ubuntu.com/getinvolved/ has instructions on how to get the code and hack on it.