Prefazione
Questa guida è stata scritta da Andrea Azzarone, su forum arlecchino92. Una discussione relativa a questa guida si trova a questo indirizzo http://forum.ubuntu-it.org/index.php/topic,449834.0/topicseen.html. La guida sarà pubblicata a puntate ogni volta che ne sarà disponibile una nuova.
Introduzione
Prerequisiti e linguaggi di programmazione
Sicuramente non è una guida rivolta a tutti gli utenti di Ubuntu, ma non sono richieste capacità eccezionali nell' arte della programmazione! Prima di tutto Unity è scritto per la maggior parte in C++, sebbene alcune parti siano scritte in C o in Vala. Sottolineare che questa guida si riferisce alla versione in sviluppo di Ubuntu Natty Narwhal 11.04. Unity utilizza inoltre il toolkit grafico nux e le librerie gnome.
Bug e bitsize
La lista dei bug di Unity è disponibile qui: https://bugs.launchpad.net/unity Ma c'è un piccolo problema con questi ultimi! La maggior parte sono abbastanza ostici da risolvere e richiedono già maggiore esperienza. Niente paura, il team di Unity ha già pensato a questo. È stata creata una lista di bug minori, che richiedono minori competenze, e che attutirà l'impatto con il codice di Unity. La lista dei bug minori (bitsize) è disponibile qui.
Per voi ho scelto di realizzare qualcosa di abbastanza interessante: cercheremo di aggiungere alla quicklist dei vari dispositivi la voce "Unmount".
Compilare e installare unity da codice sorgente
Ricordo ancora una volta che è necessario utilizzare Ubuntu Natty! Cominciamo installando un po' di roba che ci servirà in seguito. Da terminale:
sudo apt-get install bzr cmake compiz-dev gnome-common libbamf-dev libboost-dev libboost-serialization-dev libcairo2-dev libdbusmenu-glib-dev libdee-dev libgconf2-dev libgdk-pixbuf2.0-dev libglew1.5-dev libglewmx1.5-dev libglib2.0-dev libindicator-dev libpango1.0-dev libpcre3-dev libsigc++-2.0-dev libunity-misc-dev libutouch-geis-dev
Come già detto in precedenza Unity utilizza il toolkit grafico nux, che è ancora in sviluppo. È possibile installarlo direttamente da repository ma se davvero volete cominciare a "modificare e implementare nuove funzioni in Unity" dovremo prima di tutto compilare nux da sorgenti! Quindi da terminale:
bzr branch lp:nux cd nux ./autogen.sh --disable-documentation --prefix=/opt/unity make -j4 sudo make install
e successivamente:
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}
che installerà Unity in /opt/unity. Procediamo adesso alla compilazione e installazione vera e propria di Unity:
bzr branch lp:unity cd unity mkdir build; cd build cmake .. -DCMAKE_BUILD_TYPE=Debug -DCOMPIZ_PLUGIN_INSTALL_TYPE=local -DCMAKE_INSTALL_PREFIX=/opt/unity make -j4 sudo make install sudo mkdir /opt/unity/share/unity/places sudo cp /usr/share/unity/places/* /opt/unity/share/unity/places/
Il codice si commenta da solo Maggiori info sono comunque disponibili qui. E ancora:
unset PKG_CONFIG_PATH unset LD_LIBRARY_PATH unset LD_RUN_PATH
Editiamo adesso il file ~/.bashrc:
gedit ~/.bashrc
aggiungendo le seguenti 4 righe alla fine del file:
function compiz-unity-setup-env { export PATH=/opt/unity/bin:${PATH} } }} Adesso non ci resta che effettuare il log out e il log in, e lanciare da terminale i seguenti comandi: {{{ compiz-unity-setup-env compiz --replace
La guida originale alla compilazione è stata scritta da Stefano Candori e la si può trovare qui