2
--------------------------------------------------------------------------------
6
- libunity is an independant library which has a client side API for talking
7
to Unity. However it does not depend on the main Unity codebase and the
8
main Unity codebase does not depend on it.
10
- Unity and it's desktop environment modules are all modules of Compiz. We use
11
a patched version of Compiz which uses the GLib main loop instead of the
12
custom Compiz main loop. This allows us to use GNOME libraries easily inside
15
We are currently working on getting this patch upstreamed, but until then
16
you will need to build this special version of Compiz.
18
- libunity is written in Vala and the rest of Unity in C++/C.
20
- Unity depends on a library called Nux (lp:nux) which let's us do OpenGL
21
layouts quickly and efficiently.
26
These are in Debian package name form, but it should be easy enough to
27
translate them to other systems:
29
libglib2.0-dev libgdk-pixbuf2.0-dev libcairo2-dev libpng12-dev libglew1.5-dev
30
libglewmx1.5-dev libxxf86vm-dev libgl1-mesa-dev libsigc++-2.0-dev
31
libpango1.0-dev doxygen cmake pkg-config valac intltool libgee-dev
32
libbamf-dev gsettings-desktop-schemas-dev libgconf2-dev libglib2.0-dev
33
libdbusmenu-glib-dev libgtk2.0-dev libdee-dev libindicator-dev
34
libboost-dev libboost-serialization-dev libmetacity-dev python-dev cython
36
However, as with any project, it's probably best to just run autogen/cmake
37
and figure out what you need/is missing. If your distro supports grabbing
38
all the packages needed to build a package, then at least do that for
39
Compiz, as I'm not going to detail everything it needs here.
41
In case your distro isn't packaging all the Ayatana software, these links
44
https://launchpad.net/dee
45
https://launchpad.net/bamf
46
https://launchpad.net/libindicator
48
Also, although we don't hard depend on them, having a few indicators installed
49
will make your experience better:
51
https://launchpad.net/indicator-appmenu
52
https://launchpad.net/indicator-application
53
https://launchpad.net/indicator-network
54
https://launchpad.net/indicator-sound
55
https://launchpad.net/indicator-messages
56
https://launchpad.net/indicator-datetime
57
https://launchpad.net/indicator-me
58
https://launchpad.net/indicator-session
62
This is taken from http://wiki.ubuntu.com/Unity/InstallationGuideFromSource and
63
was originally authored by Sam:
67
git clone git://git.compiz.org/users/dbo/compiz-with-glib-mainloop
68
cd compiz-with-glib-mainloop
71
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
73
sudo make findcompiz_install
78
export PKG_CONFIG_PATH=/opt/unity/lib/pkgconfig:${PKG_CONFIG_PATH}
79
export LD_LIBRARY_PATH=/opt/unity/lib:${LD_LIBRARY_PATH}
80
export LD_RUN_PATH=/opt/unity/lib:${LD_RUN_PATH}
84
git clone git://git.compiz.org/compiz/compizconfig/libcompizconfig
88
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
94
git clone git://git.compiz.org/compiz/compizconfig/compizconfig-python
95
cd compizconfig-python
96
python setup.py install --prefix=/opt/unity
100
git clone git://git.compiz.org/compiz/compizconfig/ccsm
102
python setup.py install --prefix=/opt/unity
106
git clone git://git.compiz.org/compiz/plugins-main
109
git pull origin master
113
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
119
git clone git://git.compiz.org/compiz/plugins-extra
122
git pull origin master
126
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unity
135
./autogen.sh --disable-documentation --prefix=/opt/unity
144
mkdir build; cd build
145
cmake .. -DCMAKE_BUILD_TYPE=Debug -DCOMPIZ_PLUGIN_INSTALL_TYPE=package -DCMAKE_INSTALL_PREFIX=/opt/unity
151
unset PKG_CONFIG_PATH
152
unset LD_LIBRARY_PATH
158
add this to your /home/$USER/.bashrc
160
function compiz-unity-setup-env
162
export PATH=/opt/unity/bin:${PATH}
163
export PYTHONPATH=/opt/unity/lib/python2.6/site-packages
166
Logout, login, then in a terminal do
168
$ compiz-unity-setup-env
169
$ compiz --replace cpp &
172
And then use the CompizConfig Settings Window to search for and enable the Unity plugin!
177
If you find bugs in this installation guide or in Unity itself, please report them at
178
https://launchpad.net/unity/+filebug