如何安装和使用最新版本的GNOME?

我按照编译GNOME Shell的指示进行操作,虽然在过程中出现了一些错误,但是编译成功了。但是运行时却出现问题。我使用sudo apt-get install gnome-shell命令安装了GNOME Shell,但是得到的是2.31.x版本,而最新版本是2.91.5或者其他。那么有没有办法可以安装最新的版本?

是否有可用于获取最新版本的软件源?

12个回答

从软件中心安装(11.10及更高版本)

打开软件中心,搜索“gnome shell”并进行安装,或者直接点击此按钮:

Install via the software center

enter image description here

安装完成后,请注销。
  • 对于11.10

    在登录界面点击小齿轮图标,从菜单中选择“GNOME”。

    截图来源:datengrund.de/wp-content/uploads/2012/03/1.png

  • 对于12.04和12.10

    在登录界面点击显示的图标,从菜单中选择“GNOME”。

    图片描述

    截图来源:3.bp.blogspot.com/-2Z6BaRDokKs/T5pFnOu92sI/AAAAAAAADtg/bD8BAJuEh5M/s320/Gnome-Shell-session-menu.png

然后输入密码并登录:

登录管理器将记住您上次进入的会话,所以您只需要选择一次GNOME,之后可以正常登录。

进一步自定义

如果你喜欢老派的体验,你还可以使用后备模式:

如果你使用自动登录,你可能需要告诉lightdm始终使用shell:

安装其他有用的工具

命令行指令:

 sudo apt-get install gnome-shell


如何报告问题:

  • 关于GNOME3打包的讨论(底部左侧的邮件列表链接):https://launchpad.net/~gnome3-team
    • 大多数与这套软件包相关的问题都可以在此列表上进行讨论,这应该是您报告问题和疑问的首选地点。
  • 与打包无关的错误报告:https://bugzilla.gnome.org/
    • 如果GNOME3运行不正常,可能与打包有关,请不要随意向GNOME报告错误,除非您确信是上游GNOME的问题。
    • 如果您不确定是否应该将错误报告提交给上游开发者,请在IRC或上述邮件列表上咨询其他人以获取帮助。

在12.10版本中,这个是否同样适用? - marc-andre benoit
按照这种方法操作后,UnityUnity 2D选项被合并成了一个名为Ubuntu(默认)的选项,我无法再启动Unity 2D了。出了什么问题? - Yatharth Agarwal
@marc-andrebenoit 是的,我更新了答案。 - Yatharth Agarwal
对于12.04和12.10版本,请看截图中的用户名...哈哈哈... - user3459110

从源代码构建GNOME Shell

(最后更新内容:2011年2月11日,基于官方指南,请随意编辑。)

0. 编译过程中的警告/错误

GNOME Shell正在进行大量开发,源代码经常会每天更新几次。虽然下面的说明通常可以工作,但有时可能需要一些技巧才能成功编译,或者根本无法编译。

如果遇到任何问题,请检查:

当前存在的问题:

需要在库目录中删除一些文件,否则编译将失败。在进行系统更新时,这些文件可能会重新出现:阅读this以了解为什么需要删除这些文件以及如何防止升级重新安装它们。
sudo rm -rf /usr/lib*/*.la
(不用担心,这不会损坏您的系统!)
在能够运行GNOME Shell之前,您需要在构建过程后删除一个文件:
rm ~/gnome-shell/install/lib*/gtk-3.0/modules/libcanberra-gtk-module.so

1. 构建 GNOME Shell

(在 Ubuntu 10.10 32 位和 Ubuntu 11.04 64 位的开发版本上进行了测试。)

以下步骤将以类似沙盒的方式下载、编译和安装 GNOME Shell,意味着它不会影响您系统的其他部分!

安装依赖项: 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
获取GNOME Shell的设置脚本: curl -O https://git.gnome.org/browse/gnome-shell/plain/tools/build/gnome-shell-build-setup.sh
构建构建工具jhbuild并下载配置文件: /bin/bash gnome-shell-build-setup.sh
这将安装jhbuild到~/bin,您需要将其添加到PATH变量中: . ~/.profile [可选]:您可以通过编辑文件~/.jhbuildrc-custom来更改几个jhbuild选项,如下载源文件的路径等。
开始构建过程: jhbuild build
这将(目前)编译33个模块。去喝杯咖啡,小睡一会儿 -> 这需要一些时间。
一旦你看到*** success *** [33/33],就完成了。恭喜,你刚刚编译了GNOME Shell!
2. 运行GNOME Shell
如果你正在运行Compiz,你首先需要停止它(通过启动Metacity),否则GNOME Shell将无法启动:
metacity --replace &
最后,运行:
cd ~/gnome-shell/source/gnome-shell/src ./gnome-shell --replace

好了,你现在应该已经运行 GNOME Shell 了。

3. 将 GNOME Shell 设置为默认窗口管理器

在 Ubuntu 10.10 中,你可以通过更改 GConf 键来简单地替换 GNOME 会话的窗口管理器:

创建一个本地的 GNOME Shell .desktop 启动器: ln -s ~/gnome-shell/install/share/applications/gnome-shell.desktop ~/.local/share/applications/gnome-shell.desktop 然后将会话的窗口管理器更改为 GNOME Shell: gconftool-2 -s /desktop/gnome/session/required_components/windowmanager "gnome-shell" -t string
要恢复更改,请运行: gconftool-2 -s /desktop/gnome/session/required_components/windowmanager "gnome-wm" -t string
在Ubuntu 11.04中,更改窗口管理器键似乎不起作用。相反,您可以添加一个新的会话项目,在GDM登录屏幕上进行选择。因此,您需要创建与上述类似的本地.desktop文件,然后创建两个文件:
  • 会话文件:/usr/share/gnome-sessions/sessions/gnome-shell.session
  • [GNOME Session]
    Name=gnome-shell
    Required=windowmanager;
    Required-windowmanager=gnome-shell
    DefaultApps=gnome-settings-daemon;
    
  • 指向会话文件的会话项:/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
    
退出登录,然后您应该能够选择“GNOME Shell”作为会话。

4. 更新 GNOME Shell

  • 运行

    jhbuild build
    

    应该更新源代码并重新构建必要的内容。

  • 如果某个模块失败,例如出现以下情况:

    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]
    

    那么您可以尝试清除当前模块目录,并选择选项6以使用干净的源代码开始:

    [6] 进入“清除目录并重新开始”阶段
    
  • 如果这没有帮助,您可以从头开始运行以下命令:

    jhbuild build -afc
    
还是无法编译?那就检查一下0中提到的地方。

在Ubuntu 10.10上构建时,我不得不安装libmutter-dev才能获取Meta-2.91.gir文件。 - user13686
在natty中,您需要使用ppa安装lcms2: 为了满足lcms2的依赖关系,需要安装Darktable PPA:sudo add-apt-repository ppa:pmjdebruijn/darktable-release sudo apt-get update && sudo apt-get install lcms2* - Ubuntuser

适用于12.04及更高版本

如果您使用的是最新的稳定版本,您可以升级软件包到下一个 GNOME 版本,但会保留一些为了稳定性原因而保持在先前版本的软件包。您可以添加两个 GNOME 测试 PPA,其中包含未包含在最新稳定版本中的额外软件包,然而这可能会导致系统出现问题。

很有可能至少需要一个月甚至更长时间才能被认为是“稳定”的。

sudo add-apt-repository ppa:gnome3-team/gnome3
sudo add-apt-repository ppa:ricotz/testing 

然后更新您的系统。
警告:如果您立即在新版本的Gnome-Shell上尝试此操作,它将会破坏很多东西。真的,会的。
您仍然可以使用这些ppa,但是您应该预料到会有很多问题。自担风险,请添加这些ppa,然后:
sudo apt-get update && sudo apt-get dist-upgrade
sudo apt-get install gnome-shell

这些ppa提供了通过ppa可能获得的最新的Gnome shell吗?sudo add-apt-repository ppa:gnome3-team/gnome3 sudo add-apt-repository ppa:ricotz/testing - Bucic

据我所知,Gnome Shell 没有每日构建的 PPA。不过,从源代码构建它并不难。
你应该按照这里的指南进行操作。
添加 Vala PPA:
sudo add-apt-repository ppa:vala-team/ppa && sudo apt-get update

获取一些先决条件软件包:
sudo apt-get install build-essential curl autopoint automake bison flex gettext git-core gnome-common gtk-doc-tools gvfs gvfs-backends icon-naming-utils libdbus-glib-1-dev libexpat-dev libffi-dev libgnome-menu-dev libgnome-desktop-dev libgtop2-dev libjasper-dev libjpeg-dev libpng-dev libstartup-notification0-dev libtiff-dev libwnck-dev libgl1-mesa-dev liborbit2-dev libpulse-dev libreadline5-dev libxml2-dev mesa-common-dev mesa-utils libpam-dev python-dev python-gconf python-gobject xulrunner-dev xserver-xephyr gnome-terminal libcroco3-dev libgstreamer0.10-dev gstreamer0.10-plugins-base gstreamer0.10-plugins-good libltdl-dev libvorbis-dev libxklavier-dev libgnome-keyring-dev libupower-glib-dev libcups2-dev evolution-data-server-dev libecal1.2-dev libedataserverui1.2-dev

获取安装脚本:
curl -O http://git.gnome.org/browse/gnome-shell/plain/tools/build/gnome-shell-build-setup.sh
/bin/bash gnome-shell-build-setup.sh

删掉你的.la文件。如果你的内核是32位

sudo rm -rf /usr/lib*/*.la

或者如果是64位

rm ~/gnome-shell/install/lib64/*.la

将~/.bin添加到您的路径中:
export PATH=$PATH:~/bin

开始构建:
jhbuild build

等一下...
运行它:
cd ~/gnome-shell/source/gnome-shell/src
./gnome-shell --replace

如果您非常喜欢它并希望在登录时启动,请执行以下操作:
ln -s ~/gnome-shell/install/share/applications/gnome-shell.desktop ~/.local/share/applications/gnome-shell.desktop
gconftool-2 -s /desktop/gnome/session/required_components/windowmanager "gnome-shell" -t string

如果你遇到任何问题,请参考指南。你可以在webupd8找到一个稍微详细一些的指南。
祝你好运,玩得开心!

你说得对。我稍后会编辑我的帖子。 - mhmhmhmh
好的,我已经编辑了我的答案。安装脚本添加了 jhbuild。我还添加了一行代码来安装所有先决条件的软件包。 - mhmhmhmh
截至目前,这对我来说似乎不起作用。你测试过你的答案吗? - Stefano Palazzo
当然。目前它不起作用,因为jhbuild需要libxklavier 5.1版本。Ubuntu自带的是5.0版本。目前还没有发布5.1版本。解决方案要么从源代码构建,要么更改libxklavier.pc以显示实际上是5.1版本。请查看gnome-shell邮件列表中的这个主题以获取解决方案:http://bit.ly/i2qAoe。希望对您有所帮助。 - mhmhmhmh

跟随Jon的建议。然而,安装完成后,你可能会发现你的Gnome并不像你期望的那样。
我自己也遵循了Jon的建议,但他和其他人忽略了一个事实,即你可能需要移除gnome-accessibility-themes并安装gnome-themes-standard,以防这些不是默认安装的主题。否则,Gnome 3及其窗口装饰将不会看起来那么漂亮。
你可以通过图形界面或终端来进行操作:
sudo apt-get remove gnome-accessibility-themes
sudo apt-get install gnome-themes-standard

如果您的桌面看起来仍然不像互联网上的截屏那样,您可能需要运行gnome-tweak-tool(如果尚未安装,请先安装),转到界面部分,在“Gtk+主题”和“光标主题”字段中选择Adwaita,并将图标主题设置为“gnome”。这应该会使其呈现默认的Gnome 3外观。
额外的可选步骤是安装gnome-backgrounds软件包,它可以添加默认的Gnome桌面壁纸,稍后可以在系统设置->背景中进行设置。

只需运行sudo apt-get install gnome-shell

根据快速的谷歌搜索,Gnome-shell应该在11.10版本的资源库中,所以你应该可以通过apt-get安装它。然后,你只需要退出登录,将shell设置为Gnome,然后重新登录。
我不能确定11.10上的Gnome-shell情况如何,但我在11.04上安装了整个Gnome 3桌面环境,它非常稳定(只要你不像我一样深入研究所有的设置和扩展,并尝试强制运行不兼容的扩展等)。它也足够稳定,以至于Fedora使用它作为基础,而且你应该已经在使用Gnome 3。
是否值得一试取决于你想从中获得什么。它遵循与Unity相同的范例,但我个人发现它更加愉快使用,部分原因是因为它具有极高的自定义能力(如果你愿意使用CSS和/或JavaScript)。从那个范例来看,它也更加直观。如果你不确定自己是否会喜欢它,你可以在虚拟机中启动Fedora 15,或者直接尝试使用。由于11.10应该是基于Gnome 3的,所以在Unity和Gnome-shell之间切换不应该成为问题。
简而言之 - 你应该可以通过apt-get轻松安装它,并且它应该非常稳定。在Unity和它之间切换也应该很容易,因为11.10应该是基于Gnome 3的。


Ubuntu 13.10 的 GNOME 3.10

GNOME 3.10 尚未正式发布,但将于9月25日发布。然而,一旦发布,它将不会进入官方的 Ubuntu 13.10 软件源。如果您仍然希望在 Ubuntu 13.10 上安装它,您可以使用由 Ubuntu GNOME 团队建立的 GNOME3 Next PPA:

sudo apt-add-repository ppa:gnome3-team/gnome3-next
sudo apt-get update
sudo apt-get install gnome3-next

你可以这样安装Gnome3(而不是经典版):
sudo add-apt-repository ppa:gnome3-team/gnome3
sudo apt-get update
sudo apt-get install gnome-shell

现在,请确保重新启动您的计算机,并在登录屏幕上提示时,您将看到以下附加选项(点击登录名旁边的小Ubuntu图标):

enter image description here

使用第一个选项,Gnome。

enter image description here

来源