Budowanie powłoki GNOME ze źródła
(Ostatnia aktualizacja treści: 11 lutego 2011 r., W oparciu o oficjalny przewodnik , można edytować).
0. Ostrzeżenia / błędy podczas kompilacji
Powłoka GNOME jest w fazie intensywnego rozwoju, a źródła są często aktualizowane kilka razy dziennie. Chociaż poniższe instrukcje na ogół powinny działać, może się zdarzyć, że udana kompilacja wymaga pewnych hacków lub wcale nie jest możliwa.
Jeśli wystąpią jakiekolwiek problemy, sprawdź:
Obecne problemy:
Konieczne jest usunięcie kilku plików z katalogów biblioteki, w przeciwnym razie kompilacja się nie powiedzie. Podczas aktualizacji systemu pliki te mogą zostać zwrócone: przeczytaj to, aby wyjaśnić, dlaczego konieczne jest usunięcie tych plików i jak zapobiec aktualizacjom w celu ich ponownej instalacji.
sudo rm -rf /usr/lib*/*.la
(Nie martw się, to nie zaszkodzi Twojemu systemowi!)
Przed uruchomieniem powłoki GNOME musisz usunąć plik po zakończeniu procesu kompilacji:
rm ~/gnome-shell/install/lib*/gtk-3.0/modules/libcanberra-gtk-module.so
1. Budowanie powłoki GNOME
(Testowany na 32-bitowym Ubuntu 10.10 i 64-bitowej wersji rozwojowej Ubuntu 11.04.)
Poniższe pobierze, skompiluje i zainstaluje GNOME Shell w sposób podobny do piaskownicy - co oznacza, że nie dotknie reszty twojego systemu!
Zainstaluj zależności:
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
Pobierz skrypt instalacyjny GNOME Shell:
curl -O https://git.gnome.org/browse/gnome-shell/plain/tools/build/gnome-shell-build-setup.sh
Zbuduj narzędzie do kompilacji jhbuild
i pobierz pliki konfiguracyjne:
/bin/bash gnome-shell-build-setup.sh
Spowoduje to instalację, jhbuild
do ~/bin
której należy dodać PATH
zmienną:
. ~/.profile
[Opcjonalnie] : Możesz zmienić kilka jhbuild
opcji, takich jak ścieżka pobierania źródeł itp. Poprzez edycję pliku ~/.jhbuildrc-custom
.
Rozpocznij proces kompilacji:
jhbuild build
To (obecnie) skompiluje 33 moduły. Zrób filiżankę kawy, zdrzemnij się -> zajmie to trochę czasu.
Gdy zobaczysz, *** success *** [33/33]
że skończyłeś. Gratulacje, właśnie skompilowałeś GNOME Shell!
2. Uruchamianie powłoki GNOME
Jeśli korzystasz z Compiz, musisz go najpierw zatrzymać (uruchamiając Metacity), inaczej GNOME Shell nie uruchomi się:
metacity --replace &
Na koniec uruchom:
cd ~/gnome-shell/source/gnome-shell/src
./gnome-shell --replace
To wszystko, mam nadzieję, że powinieneś teraz uruchomić GNOME Shell.
3. Ustaw GNOME Shell jako domyślny menedżer okien
W Ubuntu 10.10 możesz po prostu zastąpić menedżera okien sesji GNOME poprzez zmianę klucza GConf:
Utwórz lokalny program uruchamiający .desktop dla GNOME Shell:
ln -s ~/gnome-shell/install/share/applications/gnome-shell.desktop ~/.local/share/applications/gnome-shell.desktop
Następnie zmień menedżera okien sesji na Powłokę GNOME:
gconftool-2 -s /desktop/gnome/session/required_components/windowmanager "gnome-shell" -t string
Aby cofnąć zmianę, uruchom:
gconftool-2 -s /desktop/gnome/session/required_components/windowmanager "gnome-wm" -t string
W Ubuntu 11.04 zmiana klucza menedżera okien nie wydaje się działać. Zamiast tego możesz dodać nowy element sesji, który możesz wybrać na ekranie logowania GDM. Dlatego musisz utworzyć lokalny plik .desktop jak wyżej, a następnie utworzyć dwa pliki:
Plik sesji /usr/share/gnome-sessions/sessions/gnome-shell.session
:
[GNOME Session]
Name=gnome-shell
Required=windowmanager;
Required-windowmanager=gnome-shell
DefaultApps=gnome-settings-daemon;
Element sesji wskazujący na plik sesji /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
Wyloguj się i powinieneś być w stanie wybrać GNOME Shell jako sesję.
4. Aktualizacja powłoki GNOME
Bieganie
jhbuild build
powinien zaktualizować źródła i odbudować to, co konieczne.
Jeśli moduł zawiedzie, np. Otrzymasz coś takiego:
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]
następnie możesz spróbować wyczyścić bieżący katalog modułów i rozpocząć od czystych źródeł, wybierając opcję 6:
[6] Go to phase "wipe directory and start over"
Jeśli to nie pomoże, możesz zacząć od zera, uruchamiając:
jhbuild build -afc
Nadal nie kompilujesz? Następnie sprawdź miejsca wymienione w 0.