LinuxDeepin下一個版本的桌面環境會選擇 Gnome3,大家可以用下面的辦法提前在 LD 11.06 中體驗 Gnome-Shell.
因為現有 PPA 的方法會導致用戶進不了桌面, 所以我們用編譯的開發版本的方法, 編譯的方法的好處就是即使編譯失敗, 也不會破壞現有的桌面環境。
1. 安裝編譯依賴:
sudo apt-get install curl libtiff4-dev libgstreamer0.10-dev libcroco3-dev xulrunner-dev mesa-utils
mesa-common-dev libreadline5-dev libgl1-mesa-dev libwnck-dev librsvg2-dev libgnome-desktop-dev
libgnome-menu-dev libffi-dev libgtk2.0-dev libgconf2-dev libdbus-glib-1-dev gtk-doc-tools
gnome-common git-core flex bison automake build-essential icon-naming-utils autopoint libvorbis-dev
libpam-dev libgcrypt-dev libtasn1-dev libtasn1-3-bin libgnome-keyring-dev libupower-glib-dev
libxklavier16 libxklavier-dev xserver-xephyr python-dev libpulse-dev libjasper-dev jhbuild
libgtop2-dev libsqlite3-dev libproxy-dev libdb-dev libproxy-dev libcups2-dev libusb-1.0-0-dev
libxcb-aux0-dev libxcb-event1-dev libx11-xcb-dev liboauth-dev libwebkitgtk-3.0-dev libical-dev gperf
libgudev-1.0-dev hwdata liborbit2-dev libgtk-3-dev libidn11-dev libsane-dev liblircclient-dev
libltdl-dev libvorbisfile3 libgail-3-dev libnotify4-dev libgnome-desktop-3-dev -y
2. 添加路徑到 ~/.bashrc
把下面的行加入到 ~/.bashrc 最後面:
PATH=$PATH:~/bin
PATH=$PATH:~/gnome-shell/install/bin
3.下載/執行 Gnome-Shell 構建腳本:
wget http://git.gnome.org/browse/gnome-shell/plain/tools/build/gnome-shell-build-setup.sh
chmod +x gnome-shell-build-setup.sh
./gnome-shell-build-setup.sh
4. 構建 Gnome-Shell (更新代碼也是同樣的命令):
sudo find /usr/lib{,32,64} -name "*.la" -delete (這一步非常重要, 否則 libgtk3 會報錯)
sudo jhbuild build
5. 安裝 Nautilus 3:
先下載三個包:
wget https://launchpad.net/Ubuntu/oneiric/+source/gsettings-desktop-schemas/3.1.3-0ubuntu1/+files/gsettings-desktop-schemas_3.1.3.orig.tar.bz2
wget http://launchpad.net/gnome-desktop/main/3.1.3/+download/gnome-desktop-3.1.3.tar.bz2
wget http://launchpad.net/nautilus/main/3.0.2/+download/nautilus_3.0.2.orig.tar.gz
用下面的命令依次對這三個包進行編譯:
./configure && make && sudo make install
6. 開機自動啟動 Gnome-Shell
touch ~/.xinitrc
chmod +x ~/.xinitrc
ln -s ~/.xinitrc ~/.xsession
gedit ~/.xinitrc
在 ~/.xinitrc 中加入下面的命令:
gnome-session &
ibus-daemon -x -r -d &
gnome-shell --replace
注銷, 在登錄畫面下面第三個選項框選擇 "User Defined Session" 進行登錄即可
7. 編譯出錯解決方案:
編譯的時候有可能出錯, 下面對常見的出錯提供解決方案:
1) 一般網絡錯誤, 導致 git 操作失敗, 可以選擇 6 (出錯會有一個選擇操作)進行重新下載編譯
2) 缺少某個包, 一般在錯誤的最後幾行, 你會看到提示找不到某個包 foo, 可以搜索一下, 一般都是 libfoo-dev 包, 然後用 sudo apt-get install libfoo-dev 安裝包後再選擇 6 重新編譯即可
3) 第36個模塊 colord 編譯錯誤(因為上游開發人員的失誤):
如果你在編譯 colord 的時候遇到下面的錯誤:
checking whether to build shared libraries... yes
checking whether to build static libraries... no
./configure: line 10692: syntax error near unexpected token `0.9.8'
./configure: line 10692: `GOBJECT_INTROSPECTION_CHECK(0.9.8)'
Error during phase configure of colord: ########## Error running ./autogen.sh --prefix /home/andy/gnome-shell/install --libdir '/home/andy/gnome-shell/install/lib64' --disable-examples --disable-static --disable-gtk-doc *** [36/46]
可以用這個解決方案解決:
wget http://launchpadlibrarian.net/74359148/liblcms2-2_2.2%2Bgit20110628-1_amd64.deb
wget http://launchpadlibrarian.net/74359147/liblcms2-dev_2.2%2Bgit20110628-1_amd64.deb
wget http://launchpadlibrarian.net/74359150/liblcms2-utils_2.2%2Bgit20110628-1_amd64.deb
sudo dpkg -i liblcms2-2_2.2+git20110628-1_amd64.deb
sudo dpkg -i liblcms2-dev_2.2+git20110628-1_amd64.deb
sudo dpkg -i liblcms2-utils_2.2+git20110628-1_amd64.deb
cd ~/gnome-shell/source/colord
git clean -fdx
cp ~/gnome-shell/source/clutter/build/autotools/introspection.m4 ~/gnome-shell/source/colord/m4/
jhbuild run ./autogen.sh
jhbuild run ./configure --disable-introspection
jhbuild run make
4) 錯誤 “/home/andy/gnome-shell/install/lib64/libgtk-3.so: undefined reference to `pango_layout_get_log_attrs_readonly' “
如果遇到這個錯誤的同學一般都沒有聽我的話執行命令: “sudo find /usr/lib{,32,64} -name "*.la" -delete”
如果遇到這個錯誤可以用下面的方案解決:
sudo find /usr/lib{,32,64} -name "*.la" -delete
rm -rf ~/gnome-shell/install/
sudo jhbuild build
好了, 這就是所有關於 Gnome-Shell 編譯的方案, 當然所有基於 Debian 的發行版本都可以用這個方案, 非 Debian 的發行版本可以用相應的命令替換 apt 應該也可以編譯成功。
最後上張截圖吧: