# GNOME (简体中文)

相关文章

- Desktop environment
- Display manager
- Window manager
- GTK+
- GDM
- Nautilus
- Gedit
- Epiphany
- GNOME Flashback

GNOME 项目使用最新的科技，为用户从头打造了全新的现代桌面——GNOME 3。它有以下特性：

- 提供了一个现代化的默认视觉主题和字体
- 能让您轻松访问所有窗口和程序的活动视图
- 内置整合的桌面消息服务
- 集成改进的 Nautilus 文件管理器
- 综合系统通知服务
- 新的系统设置程序
- 快速的活动搜索功能
- 还有更多特色：窗口平铺

[参阅GNOME 3网站以获取更多信息]

## 简介

GNOME 3 提供了2种用户界面：Gnome Shell(新的标准布局)和备用模式(Fallback Mode)。GNOME会话会自动检测您的计算机是否适合运行 GNOME Shell，若不适合则会自动选择备用模式。

备用模式(在您使用 gnome-panel 和 Metacity 来取代 GNOME Shell 和 Mutter 时)非常类似 GNOME 2 布局。

您仍然可以在使用备用模式时将 Metacity 更换为您喜欢的窗口管理器。

## 在新系统上安装

GNOME 3 在 [extra] 软件库中。 gnome 包组包含基本桌面环境和软件，gnome-extra 包组包含剩下的。假如您不想安装 GNOME 全部的软件包，在安装它的时候注意看软件包描述（或者你可以先安装再删除他们）。

你必须安装 gnome 软件包组。 安装 gnome-extra 不意味着你想要 gnome 中的一切。

举例：

    # pacman -S gnome

选择你想要从 gnome-extra 组中想要使用的应用程序，不必安装整个软件包组。

    # pacman -S gnome-extra

### D-BUS 守护进程

GNOME 桌面依赖 D-Bus 守护进程以正确运行，参照 dbus 来设置。

### 运行 GNOME

为了更好地整合桌面推荐使用GDM登录管理器。其它登录管理器，如 SLiM 也能运作。参阅 显示管理器 来了解桌面环境的启动。

登陆管理器为系统提供一个有限的控制，全局系统控制请参考 PolicyKit wiki 页面(out of date) 。

    # pacman -S gdm

如果您更喜欢从控制台下启动 GNOME，把下面一行添加到您的`~/.xinitrc`文件中:

    ~/.xinitrc

     exec gnome-session

现在 GNOME 将在您使用`startx`时启动。

详情参阅xinitrc。

## 使用 shell

### GNOME 小抄

GNOME 网站 GNOME Shell cheat sheet 讲解了怎么切换任务，使用键盘，窗口控制，使用面板，预览模式等。

### 重启 GNOME shell

当修改过界面之后你可能需要重启 GNOME shell。你可以重登陆，不过有一个简单快捷的方法。 按 `Alt` + `F2` 再输入 `r` 再 `Enter`

### GNOME Shell 崩溃

一些特定的微调或者经常性重启 Shell 会导致 shell 在将要重启的时候崩溃。这个时候你必须做好心理准备，然后强制注销。有一些修改，例如在GNOME Shell 和 fallback mode, 之间切换，不能简单地使用 r 重启；必须重登陆来应用这个效果。

丑话说在前面，在重启 shell 前请先把有用的文档保存（或者关闭）。虽然这不是必要的，因为窗口和文档在重启了 shell 之后应该还在。

## 定制 GNOME 外观

### 外观概览

GNOME 3 是重新设计的，但是像大多数大型软件项目一样，他是很多不同时间的部分组装起来的。他没有一个 无所不包 的配置工具。新的 系统设置 比以前的控制面板有很大的改进。 系统设置 组织得很好，但是你可能想要更深层次地改变外观。

以前你所熟悉的配置工具现在有的好用，有的不好用了。有些设置选项隐藏着，不太容易找到。许多设置将会迁移到新的工具，或者随着时间的迁移暴露在大家面前，扩展最新的 GNOME 桌面。

#### Gsettings

gsettings 是一个命令行工具，他把设置文件存储为二进制格式，而不是像以前一样使用 XML。在 Customizing the GNOME Shell 有个展现 gsettings 威力的好教程。

#### GNOME tweak tool

这个工具可以定制字体，主题， 标题栏和其它一些实用的设置。

    # pacman -S gnome-tweak-tool

3.0.3 之后的版本只有在 gnome-shell 安装的时候才工作（假如你使用 fallback mode，你一样要安装 shell，这是一个 bug）。 Bugzilla bug report here.

#### 通过修改 settings.ini 改变 GTK3 主题

就像用 `~/.gtkrc-2.0` 配置 GTK2 主题一样，我们用 `${XDG_CONFIG_HOME}/gtk-3.0/settings.ini` 来配置GTK3主题。

`$XDG_CONFIG_HOME` 变量一般设置为 `~/.config`

GNOME3默认主题为Adwaita，他是 `gnome-themes-standard` 的一部分。别主题可以在这里找到 Deviantart 网站。举例：

    ${XDG_CONFIG_HOME}/gtk-3.0/settings.ini

      [Settings]
      gtk-theme-name = Adwaita
      gtk-fallback-icon-theme = gnome
      # next option is applicable only if selected theme supports it
      gtk-application-prefer-dark-theme = true
      # set font name and dimension
      gtk-font-name = Sans 10

重启 GNOME shell 来应用设置。更多的 GTK 选项可以在这里找到GNOME 开发人员文档。

#### 图标主题

使用 gnome-tweak-tool v. 3.0.3 及之后的版本设置,把你想要设置的图标主题放在 `~/.icons`。

通常，GNOME3的图标主题和GNOME2的兼容，你不必为默认图标锁住。把你钟爱的图标主题文件夹放在 `~/.icons` 里面。例如：

    $ cp -R /home/user/Desktop/my_icon_theme ~/.icons

你可以在 `gnome-tweak-tool` 的 interface 里面应用新的鼠标主题 my_icon_theme 。

或者,你可以选择不使用 `gnome-tweak-tool` 直接修改配置文件。添加GTK图标主题到 `${XDG_CONFIG_HOME}/gtk-3.0/settings.ini`。注意，不要使用引号。

    ${XDG_CONFIG_HOME}/gtk-3.0/settings.ini

    ... previous lines ...

    gtk-icon-theme-name = my_new_icon_theme

### Nautilus

#### 移除侧边栏计算机中的文件夹

显示的文件夹在 `~/.config/user-dirs.dirs` 里配置，他可以被任何编辑器直接修改。运行 `xdg-user-dirs-update` 来应用修改。但是建议设置文件权限为只读。

#### 地址栏显示文本路径

标准的 Nautilus 工具栏用按钮来显示路径。想要从键盘输入，你需要使它显示文本路径。按 `Ctrl` + `L` 就可以完成。

假如你想让它始终显示为文本路径，用 gsettings 如下所示。

    $ gsettings set org.gnome.nautilus.preferences always-use-location-entry true

注意: 这样修改之后，你不能回到按钮路径。只有在设置为 false 的情况下，可以通过快捷键来使两种模式都可用。

### GNOME 面板

#### 在时间栏显示日期

默认 GNOME 在顶栏只显示星期和时间。可以通过下面的命令修改，修改立即生效。

    # gsettings set org.gnome.shell.clock show-date true

#### 隐藏顶部面板的图标

在登录 GNOME 时，顶部面板可能会出现一些不需要的图标。通过编辑 GNOME 面板脚本来移除这些图标。

例如，要想移除 universal access icon。从 AREA_ORDER 行中移除 'a11y'，并注释掉 AREA_SHELL_IMPLEMENTATION 行中的 'a11y'。

修改

    /usr/share/gnome-shell/js/ui/panel.js

    const STANDARD_STATUS_AREA_ORDER = ['ally', 'keyboard', 'volume', 'network', 'bluetooth', 'battery', 'userMenu'];
    const STANDARD_STATUS_AREA_SHELL_IMPLEMENTATION = {
        'a11y': imports.ui.status.accessibility.ATIndicator
        'volume': imports.ui.status.volume.Indicator,
        'battery': imports.ui.status.power.Indicator,
        'keyboard': imports.ui.status.keyboard.XKBIndicator,
        'userMenu': imports.ui.userMenu.UserMenuButton
    };

为

    /usr/share/gnome-shell/js/ui/panel.js

    const STANDARD_STATUS_AREA_ORDER = ['keyboard', 'volume', 'network', 'bluetooth' 'battery', 'userMenu'];
    const STANDARD_STATUS_AREA_SHELL_IMPLEMENTATION = {
        //'a11y': imports.ui.status.accessibility.ATIndicator
        'volume': imports.ui.status.volume.Indicator,
        'battery': imports.ui.status.power.Indicator,
        'keyboard': imports.ui.status.keyboard.XKBIndicator,
        'userMenu': imports.ui.userMenu.UserMenuButton
    };

保存并重启 gnome-shell 查看结果。

1. `Alt+F2`
2. `r`
3. `Enter`

#### 在状态菜单禁用休眠

一个快速的对于 GNOME 3.2 的方法是修改 `/usr/share/gnome-shell/js/ui/userMenu.js` 的539行和 `/usr/share/gnome-shell/js/gdm/powerMenu.js` 的103行。（对于3.2之前的版本，修改 `/usr/share/gnome-shell/js/ui/statusMenu.js` 第153行）来全局禁用他。下次启动GNOME shell生效。

    /usr/share/gnome-shell/js/ui/userMenu.js

     // this._haveSuspend = this._upClient.get_can_suspend();  //  Comment this line out.
     this._haveSuspend = false;                                //  Use this line instead.

想完成这个过程，在终端中输入：

     GNOME_SHELL=/usr/share/gnome-shell
     SCRIPTS=$(grep -lr get_can_suspend $GNOME_SHELL/js)
     for FILE in $SCRIPTS ; do
           sed -r -i -e 's/[^= ]+.get_can_suspend\(\)/false/' "$FILE"
     done

上面的命令在升级 GNOME 版本后就失效了。一个有效的方法是添加上面的代码到 gdm 或者系统的启动脚本中 (如: /etc/rc.local), 来保持升级后隐藏“休眠”。

另外的做法是安装 GNOME Shell 扩展 `alternative status menu`，在软件包gnome-shell-extension-alternative-status-menu中。

#### 去掉注销时的延迟

按照下面的方法修改来去掉注销的确认和 60 秒的延迟。

这个对话框一般出现在你用状态菜单注销的时候。这个修改对于 关机 也生效。这个不是全局修改，只对使用该命令的用户生效。使用该命令立即生效。

    $ gsettings set org.gnome.SessionManager logout-prompt 'false'

### 活动视图

#### 从应用程序视图移除应用程序项目

GNOME 用 .desktop 文件来填充应用程序视图。这些纯文本文件位于`/usr/share/applications`。 Nautilus 不把他们识别为纯文本文件，你不能直接在文件夹视图中编辑他们。使用终端显示或编辑它们

    # ls /usr/share/applications
    # nano /usr/share/applications/foo.desktop

要想系统全局修改，直接编辑`/usr/share/applications`中的文件。要想只对自己生效，把 foo.desktop 复制到home文件夹：

    $ cp /usr/share/applications/foo.desktop ~/.local/share/applications/

你可以按照你的想法编辑 .desktop 文件。

注意: 删除一个 .desktop 文件并不卸载软件，只是删除他的桌面特性（如文件关联，快捷键等）。

添加下列选项到 .desktop 文件来使 foo 不再显示在应用程序视图：

    $ echo "NoDisplay=true" >> foo.desktop

#### 怎样改变应用程序图标大小

对于很多人来说，一个很怪异的事情就是 GNOME 3 的图标大小。当遇到一个小屏幕加很多程序的时候很痛苦。 很高兴这里有一个方法能改变这中情况，修改 GNOME shell 主题。

直接修改系统文件夹(别忘了备份)或者复制到你的用户文件夹。对于默认主题，修改`/usr/share/gnome-shell/theme/gnome-shell.css`

对于用户主题，修改`/usr/share/themes/<UserTheme>/gnome-shell/gnome-shell.css`

修改 gnome-shell.css ，用下面的值替换。然后#重启 GNOME shell

    gnome-shell.css

     .icon-grid {
         spacing: 18px;
         -shell-grid-item-size: 82px;
     }

     .icon-grid .overview-icon {
         icon-size: 48px;
     }

默认主题的小图标版在AUR上提供。

#### 禁止鼠标接触 hot corner（左上角）切换活动视图

要禁用这一功能，编辑`/usr/share/gnome-shell/js/ui/layout.js`（Gnome 3.0.x中是panel.js）文件的这一段：

    layout.js

     this._corner = new Clutter.Rectangle({ name: 'hot-corner',
                                           width: 1,
                                           height: 1,
                                           opacity: 0,
                                           reactive: true });icon-size: 48px;
     }

把reactive的值true修改为false，#重启 GNOME shell即可。

### 标题栏

#### 减少标题栏高度

    # sed -i '/title_vertical_pad/s|value="[0-9]\{1,2\}"|value="0"|g' /usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml

重启 GNOME shell，这会修改垂直间距从14到0，给你更时尚的外观。

想要恢复默认值，从官方软件仓库中安装 gnome-themes-standard

#### 标题栏按钮重新排序

目前只能通过 gconf-editor 来修改。

举个例子，把关闭和最小化按钮移大左边。打开 gconf-editor ，找到 desktop.gnome.shell.windows.button_layout 键，修改他的值为 `close,minimize:` （冒号就是左边与右边之间的空格）。修改为你需要的按钮，但是一个按钮不能出现两次。同时，一些按钮已经被抛弃了。重启 GNOME shell 看看效果。

#### 当最大化时隐藏标题栏

    # sed -i -r 's|(<frame_geometry name="max")|\1 has_title="false"|' /usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml

重启 GNOME shell， 这样修改之后你会发现你很难去离开最大化状态。

用合适的按键组合， `Alt` + `F5`, `Alt` + `F10` 或 `Alt` + `Space` 解决这个问题。

为了防止 `metacity-theme-3.xml` 在每次 gnome-themes-standard 升级的时候都被覆盖，添加文件名和 `NoUpgrade`到 `/etc/pacman.conf`

    /etc/pacman.conf

    ... previous lines ...

    # Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
    # IgnorePkg   =
    # IgnoreGroup =

    NoUpgrade = usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml    # Do not add a leading slash to the path

    ... more lines ...

恢复默认主题设置，安装gnome-themes-standard。

### 登录屏幕

#### 登录管理器壁纸

在会话变量被如上设置之后，你就可以发出命令检索或者设置 GDM 项目。

最简单的方法是使用配置编辑器图形界面：

    $ dconf-editor

设置的位置和下面的命令行一样。

下面是用命令行检索和设置 GDM 壁纸。

    $  GSETTINGS_BACKEND=dconf gsettings get org.gnome.desktop.background picture-uri
     $  GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri 'file:///usr/share/backgrounds/gnome/SundownDunes.jpg'

     $  GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-options 'zoom'
     ## Possible values: centered, none, scaled, spanned, stretched, wallpaper, zoom

注意: 你必须指定一个 "gdm" 有读权限的文件，GDM不能读你的home文件夹。

另外还有一种可以在图形界面改变主题 (gtk3, 图标和鼠标)、壁纸和其他细小的设置 GDM 登陆屏幕的方法，你可以从 AUR 安装 gdm3setup.

#### 登录界面大字体

这个修改用 scaling factor 放大你的登陆界面字体。就像在桌面上你使用辅助功能一样。

在做这个修改之前，你必须 export GDM会话变量。

    $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.interface text-scaling-factor '1.25'

#### 关闭声音

这个调整让你在登录界面通过快捷键禁用声音反馈。你必须首先 export GDM会话变量。

    $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.sound event-sounds 'false'

如果上面的调整不工作或者你无法 export GDM 会话变量，有一个比真正解决更容易的解决方法：在登陆时用键盘多媒体键静音或者降低音量。

#### 按电源键启用交互界面

默认安装设置电源键功能是休眠。关机或显示会话或许会更好一点。你必须首先 export GDM会话变量。

     $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.settings-daemon.plugins.power button-power 'interactive'
     $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.settings-daemon.plugins.power button-hibernate 'interactive'
     $ gsettings list-recursively org.gnome.settings-daemon.plugins.power

#### 改变 GDM 的键盘布局

由于 GDM 无视您的 GNOME 3 键盘设置，您得在 Xorg 配置文件中设置您的键盘布局。参阅此处： Beginner's Guide.

### 其他技巧

参见：GNOME Tips (简体中文)。

## 杂项设置

#### 登录 GNOME 3 后自动启动程序

您可以使用gnome-session-properties工具来指定登录后自动启动的程序。它是gnome-session包的一部分。

    $ gnome-session-properties

#### 登录 GNOME 3 后启用 numlock

从 [community]软件库中安装numlockx。然后添加一个自动启动命令运行numlockx。

    # pacman -S numlockx
    $ gnome-session-properties

上面的命令打开启动应用程序首选项。点击 添加 ，输入以下内容：

Name: | Numlockx
Command: | /usr/bin/numlockx on
Comment: | Turns on numlock.

这个不是系统全局的改变，为你的每个用户重复上述步骤。

#### 移动对话窗口

对话窗口默认配置为不可移动，某些情况下很不方便。可以使用gconf-editor更改这一配置。修改以下配置：

    /desktop/gnome/shell/windows/attach_modal_dialogs

修改后重启 GNOME Shell 即可。

### GNOME shell扩展

GNOME Shell可以使用第三方扩展来定制。这些扩展提供了一些额外的功能，如：让您拥有一个可以一直显示的Dock，并让您可以更换Shell的主题。 更多有关目前可用的扩展功能的信息可以在这里 找到。最新的关于扩展的文章你可以通过这个链接搜索到。

[extras]软件库有一些可以单独安装的扩展。（最新版本的扩展你可以用他的代码snapshot）列表在这里

     $ pacman -Ss gnome-shell-extension

你可以在AUR里面找到一些别的有用的扩展。一些值得一提的是：

- Presentation Mode 为电源菜单添加屏幕保护选项的扩展。
- Weather 一个可以显示天气通知的扩展。
- Alternative Status Menu 让你的用户菜单里显示休眠和关机的扩展。

在安装完一个扩展之后重启 GNOME shell， 。故障排除信息参照安装扩展导致GNOME停止工作。

### 通过控制台设定默认虚拟终端

`gsettings`在 GNOME 3 中代替了`gconftool-2`。它可以被用来手动设置如默认终端。这一设定与nautilus-open-terminal相关。

使urxvt作为进程运行的命令如下：

    $ gsettings set org.gnome.desktop.default-applications.terminal exec urxvtc
    $ gsettings set org.gnome.desktop.default-applications.terminal exec-arg "'-e'"

Note: 对于 nautilus-open-terminal,你需要设置一个参数(如 `-e`)，这样他就能自动`cd`到你所在的文件夹。

### 中键模拟

GNOME 3 禁止中键模拟功能，无论你 Xorg 怎么设置(Emulate3Buttons)。用下列命令打开他：

    gsettings set org.gnome.settings-daemon.peripherals.mouse middle-button-enabled true

### Xmonad

Xmonad 是一个平铺窗口管理器。

升级到GNOME3会让你的xmonad设置失效。启用备用模式，添加两个文件是它生效

      /usr/share/gnome-session/sessions/xmonad.session

    [GNOME Session]
    Name=Xmonad session
    RequiredComponents=gnome-panel;gnome-settings-daemon;
    RequiredProviders=windowmanager;notifications;
    DefaultProvider-windowmanager=xmonad
    DefaultProvider-notifications=notification-daemon

      /usr/share/xsessions/xmonad-gnome-session.desktop

    [Desktop Entry]
    Name=Xmonad GNOME
    Comment=Tiling window manager
    TryExec=/usr/bin/gnome-session
    Exec=gnome-session --session=xmonad
    Type=XSession

下次你登录，你可以选择 Xmonad GNOME 作为你的会话。

## 启用隐藏特性

GNOME 3 隐藏了许多实用的选项，您可以使用dconf-editor去定制它们。您可以使用gconf-editor定制尚未迁移到 dconf 的选项。

### 改变热键

在dconf-editor中，启用org.gnome.desktop.interface "can-change-accels"。

一个改变移动文件到回收站的快捷键的例子： Nautilus默认设置是 `Ctrl` + `Delete`。

- 打开Nautilus，选择任意文件，点击菜单栏的 编辑。
- 鼠标悬停在 移动到回收站 菜单项上。
- 悬停时，按下 `Delete` ，默认快捷键会被重置。
- 现在按下您想设作快捷键的按键。
- 再次按下 `Delete` ，快捷键会变为 `Delete` 。

确认您已经选中一个文件，否则"移动到回收站"菜单项会是灰色不可用的。您应当在此之后禁用 "can-change-accels" 以防止意外的快捷键改变。

### 如何通过状态栏菜单关机

现在用户点击右上角的状态栏菜单时会发现，关机选项似乎被隐藏了起来。如果您想通过状态栏菜单关闭您的系统，点击它，然后按下`Alt`。"待机"选项将立刻变为"关机..."，它将使您能正确地关闭您的系统。

如果你全局禁用了休眠在 此文档别的地方，你不需要做这个步骤。

您也可以安装 "Alternative Status Menu" 扩展。这将在通常状态菜单中的"挂起"选项下新增一个常驻的"关机..."选项。

## 启用集成的消息(Empathy)

Empathy是集成消息系统背后的引擎。所有基于您的消息账户的系统设置将不会出现，除非 telepathy 组的软件包或至少其中一个后端（例如：telepathy-gabble或telepathy-haze）被安装。

这些软件包没有被默认的 Arch GNOME 安装所包括，Empathy 也没有给出很好的错误信息提示，它未能开始在后台运作。您可以通过以下命令安装它们：

    # pacman -S telepathy

没有telepathy，empathy就不能打开账户管理并且停留在这个状态。就算你把empathy干净地退出，/usr/bin/empathy-accounts还会继续运行，在你新建账户之前，你必须杀掉他。

在Freedesktop.org Telepathy Wiki查阅telepathy组件。

## 启用备用模式

如果 gnome-shell 不存在或您的显卡不支持混成特效的话，您的会话将自动以备用模式启动。

如果您想在安装了 gnome-shell 的情况下启用备用模式 (Fallback Mode) 的话，打开系统设置。打开系统信息>图形。把强制使用备用模式调为`开启`。

你也可以选择用gsettings命令来选择会话类型。

    $ gsettings set org.gnome.desktop.session session-name 'gnome-fallback'

重新登录应用设置。禁用备用模式，用'gnome' 代替 'gnome-fallback'。

## 疑难解答

### GNOME 登录需要花很长的时间

用paprefs察看你是否启用PulseAudio Network 。只要有任何音频设置启用了，在启动后gnome挂起大约一分钟。

一个方案是新建一个用户，用新建的用户登录。另一个方案是移动`~/.gconf`, `~/.gconfd` 和 `~/.config/dconf`文件夹到别的地方。重登录看问题是否还在。

如果不再延迟，一个个尝试你的设置，看看是哪个导致的错误。

### 安装扩展导致 GNOME 停止工作

如果安装这些扩展导致 GNOME 停止工作，那您必须首先将 user-theme 和 auto-move-windows扩展从它们的安装文件夹中移除。

安装目录可能是`~/.local/share/gnome‑shell/extensions`,`/usr/share/gnome‑shell/extensions` 或 `/usr/local/share/gnome‑shell/extensions`中的一个。删除这两个扩展文件夹可能解决问题。如果不能，逐个扩展尝试。

移除或添加扩展到这些文件夹会将它们从系统移除或安装。更多有关GNOME Shell扩展的信息可以在这里 找到。

### 扩展在 GNOME 3 升级后不工作了

找到扩展的安装目录，可能是 `~/.local/share/gnome-shell/extensions` 或 `/usr/share/gnome-shell/extensions`.

编辑扩展子文件夹中的每一个 `metadata.json`

Insert: | `"shell-version": ["3.0"]`
Instead of (for example): | `"shell-version": ["3.0.1"]`
You might instead use: | `"shell-version": ["3.0.0", "3.0.1", "3.0.2"]`

"3.0" 是最好的选择，这个表示扩展能在所有 3.0.x GNOME Shell版本下工作。

### 从休眠恢复后屏幕没有锁

只有从 GNOME 状态菜单睡眠，菜单才会锁定。如果你用电源键睡眠或者休眠，在恢复后屏幕不会锁定。这是一个 dconf 的配置文件错误。

打开dconf-editor ，找到 org.gnome.power-manager.，去掉 `lock-use-screensaver` 的对勾。

    # gsettings set org.gnome.power-manager lock-use-screensaver 'false'

现在你用状态菜单，电源键或者快捷键休眠，睡眠，恢复的时候你的屏幕应该被锁定了。Bug report: Screen gets no more locked after suspend #Comment 8

### 只有 conky 运行时键盘快捷方式不工作

gnome-shell 键盘快捷方式(如 Alt+F2,Alt+F1 和多媒体键快捷方式)当只有 conky 运行时不会工作。然而如果另一个程序(例如 gedit)在运行，键盘快捷方式就可以工作了。

解决方式：编辑 .conkyrc

    own_window yes
    own_window_transparent yes
    own_window_argb_visual yes
    own_window_type dock
    own_window_class Conky
    own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

### GTK 2+ 应用程序显示段错误无法启动

此错误往往在安装了oxygen-gtk的情况下发生。这个主题与 GNOME 3 或 GTK 3 的某一设置冲突，当它被设置成 GTK 2 主题时，GTK 2 程序会出现类似下面的段错误：

    (firefox-bin:14345): GLib-GObject-WARNING **: invalid (NULL) pointer instance

    (firefox-bin:14345): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

    (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed

    (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed

    (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed

    (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed

    (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed

    (firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
    Segmentation fault

目前的"解决方法"是把oxygen-gtk从系统中完全移除并为您的应用程序设置另一个主题。

### ATI Catalyst 驱动在使用 GNOME Shell 的时候遭遇到了毛刺和伪影

目前不推荐使用 Catalyst 运行 GNOME Shell。开源的 ATI 驱动（xf86-video-ati）似乎是能正确地运行 GNOME 3 混成桌面。

注意: 有望在 Catalyst 11.9 中修复。参见 http://ati.cchtml.com/show_bug.cgi?id=99

### 多台显示器和 dock 扩展

如果你有多台显示器，并且用 Nvidia Twinview 配置，你的 dock 扩展可能会夹在显示器的中间。编辑扩展的源文件来重定位 dock。

编辑 /usr/share/gnome-shell/extensions/dock@gnome-shell-extensions.gnome.org/extension.js ，在代码中找到这行：

    this.actor.set_position(primary.width-this._item_size-this._spacing-2, (primary.height-height)/2);

第一个参数是dock的X方向位置，从2改成15，dock在我的主显示器上到了正确的位置。你可以尝试几个X，Y的值来让他到合理位置。

    this.actor.set_position(primary.width-this._item_size-this._spacing-15, (primary.height-height)/2);

### Empathy和其他程序没有环境音

如果你正在使用 OSS, 你需要安装AUR上的 libcanberra-oss。

必须安装sound-theme-freedesktop包以获取默认环境声：

     # pacman -S sound-theme-freedesktop

### 通过 can-change-accels 编辑快捷键失败

也可以通过 accel map 手动设置快捷键。在哪里找到这些文件取决于应用软件，例如，Thuner 在`~/.config/Thunar/accels.scm`，Nautilus 在 `~/.gnome2/accels/nautilus`。文件含有一系列快捷键，还未更改的快捷键用 ";" 注释，去掉注释以启用。

### 在备用模式右键点击面板停止响应

打开 gconf-editor 找到/apps/metacity/general/mouse_button_modifier，面板和 applets 也在使用快捷键 (<Alt>, <Super> 等)。

### "显示桌面"快捷键无效

GNOME 开发者认为他是一个 bug (察看 https://bugzilla.gnome.org/show_bug.cgi?id=643609 )，因为最小化被抛弃了。定义 ALT+STRG+D 为下列设置：

    系统设置 --> 键盘 --> 快捷键 --> 导航 --> 隐藏所有正常窗口

### Nautilus 不启动

打开 gnome-tweak-tool -> File Manager -> Have file manager handle the desktop -> Off

### 不能保存显示器配置文件

如果你遇到这样的问题，尝试禁用 xrandr gnome-settings-daemon 插件：

    dconf write /org/gnome/settings-daemon/plugins/xrandr/active false

### 按触摸板锁定键不能重新启用触摸板

有一些笔记本有触摸板锁定键，这样你可以在打字的时候禁用他，不用担心碰到触摸板。但是GNOME可以正确地锁定他，却不能启用。如果触摸板已经被禁用，按下面操作解锁：

1. 按 ALT+F2 , 输入 gnome-terminal，回车
2. 输入以下命令

    xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1

### 在 Nautilus 里面 CTRL+V 粘贴路径而不是文件

如果你被这个问题困扰，编辑 ~/.gnome2/accels/nautilus你可以发现两个 CTRL+V :

    (gtk_accel_path "<Actions>/DirViewActions/Paste" "<Control>v")
    ...
    (gtk_accel_path "<Actions>/ClipboardActions/Paste" "<Control>v")

问题在于第二项，删除他可以好过一阵子，我可能还要再去修改他。另一个方法是修改快捷键。

### 不能连接到加密 Wi-Fi

如果你可以看到 wifi 连接,但是点击加密网络却不能打开输入密码对话,你可能需要安装 network-manager-applet。察看Gnome NetworkManager setup.

### “Mutter 命令 33 尚未定义。”

当你使用 print screen 截屏的时候，出现“Mutter 命令 33 尚未定义。”。mutter 还用着 metacity 的配置文件。

    $ sudo pacman -S metacity

### “Mutter-dialig：终端命令未定义”

    $ gconftool-2 --type=string --set "/desktop/gnome/applications/terminal/exec" "gnome-terminal"

## 外部链接

- 官方网站
- 主题, 图标, 背景:
  - GNOME Art
  - GNOME Look
- GTK/GNOME 程序:
  - GNOME Files
  - GNOME Project Listing

Category:

- Desktop environments (简体中文)