# GNOME (简体中文)

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

相关文章

- Desktop environment
- Display manager
- Window manager
- GTK
- GDM
- GNOME/Tips and tricks (简体中文)
- GNOME/Troubleshooting (简体中文)
- GNOME/Files
- GNOME/Gedit
- GNOME/Web
- GNOME/Evolution
- GNOME/Flashback
- GNOME/Keyring
- Cinnamon
- MATE
- Official repositories#gnome-unstable

翻译状态：本文是 GNOME 的翻译。上次翻译日期：2018-06-19。如果英文版本有所更改，则您可以帮助同步翻译。

GNOME（读音是 gah-nohm 或 nohm）是一个简单易用的桌面环境。它是由 GNOME 项目设计并完全由自由和开源的软件组成。GNOME 是 GNU 项目的一部分。默认使用 Wayland 而不是 Xorg 进行显示。

## 安装

有两个软件组可用：

- gnome 包含基本的桌面环境和一些集成良好的应用程序；

- gnome-extra 包含其他 GNOME 应用，包括压缩文件管理器、文本编辑器和一些游戏。请注意，这个组建立在 gnome 组之上。

基础桌面环境由 GNOME Shell ——一个 Mutter 窗口管理器的插件——组成。它可以通过 gnome-shell 单独安装。

注意： mutter 充当桌面的混成管理器。它利用硬件图形加速来提供减少屏幕杂乱的效果。GNOME 会话管理器会自动检测显卡驱动是否能够运行 GNOME Shell，如果不行则用 llvmpipe 软件渲染。

## GNOME 会话

GNOME 有三个可用的会话，都使用 GNOME Shell。

- GNOME 是使用 Wayland 的默认会话，传统 X 应用将通过 Xwayland 运行。
- GNOME Classic 的桌面布局类似于传统的 GNOME 2, 使用预先激活的插件和参数。[1] 因此，它更像是一个定制的 GNOME Shell，而不是一个完全独立的模式。
- GNOME on Xorg 使用 Xorg 运行 GNOME Shell。

## 运行 GNOME

GNOME 可以通过显示管理器以图形方式启动，也可以从控制台手动启动。

注意： GNOME 的锁屏功能由 GDM 提供支持。如果没有使用 GDM 启动 GNOME，则需要使用另一个屏幕锁定器来提供此功能。详见List of applications/Security#Screen lockers。

### 图形界面启动

从显示管理器会话菜单中选择 GNOME, GNOME Classic 或 GNOME on Xorg 。

### 手动启动

#### Xorg 会话

- 对于 GNOME on Xorg 会话，在 `~/.xinitrc` 中添加：`exec gnome-session`。
- 对于 GNOME Classic 会话，在 `~/.xinitrc` 中添加：

      export XDG_CURRENT_DESKTOP=GNOME-Classic:GNOME
      export GNOME_SHELL_SESSION_MODE=classic
      exec gnome-session --session=gnome-classic

修改完 `~/.xinitrc` 后，即可使用 `startx` 启动 GNOME（有关其他详细信息，例如如何保留 logind 会话，详见 xinitrc）。设置完 `~/.xinitrc` 后，也可以设定在登录时自动启动X。

#### Wayland 会话

注意：

- xorg-server-xwayland[断开的链接：replaced by xorg-xwayland] 软件包提供的 X 服务器仍然需要用于运行尚未移植到 Wayland 的应用程序。
- 使用专有 NVIDIA 驱动的 Wayland 会话目前的性能非常差：FS#53284。

可以使用 `XDG_SESSION_TYPE=wayland dbus-run-session gnome-session` 手动启动 Wayland 会话。

若要在 tty1 登录时启动，将以下内容添加到 `.bash_profile` 中：

    if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]] && [[ -z $XDG_SESSION_TYPE ]]; then
      XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session
    fi

### Wayland 中的 GNOME 应用程序

在使用 GNOME 会话时，GNOME 应用程序将使用 Wayland 运行。GNOME Applications under Wayland 中列出了 GNOME 应用程序在 Wayland 下的当前状态。若要调试，GTK+ 手册 列出了选项和环境变量。

## 浏览

GNOME Shell cheat sheet 中解释了如何高效地使用 GNOME shell，它展示了 GNOME shell 的特色和快捷键，包括切换任务，使用键盘，窗口控制，面板，概览模式等等。以下是部分常用的快捷键：

- `Super` + `m`：显示消息托盘
- `Super` + `a`：显示应用程序菜单
- `Alt-` + `Tab`：切换当前使用的应用
- `Alt-` + ``` (美式键盘 `Tab` 上面的按键)：切换前台应用程序的窗口
- `Alt` + `F2`，然后输入 `r` 或 `restart`：在图形界面出问题时重启界面（仅用于 X/传统 模式，不适用于 Wayland 模式）。

## 遗留名称

注意： 一些 GNOME 程序在文档和对话框中的名称已经更改，但执行文件名称却没有。下面表格列出了一些这样的应用程序。
提示： 在搜索栏中搜索应用的遗留名称将成功找到对应的应用，例如搜索 nautilus 将返还 文件。

当前 | 遗留
--- | ---
文件 | Nautilus
Web | Epiphany
视频 | Totem
主菜单 | Alacarte
文档查看器 | Evince
磁盘使用情况分析器 | Baobab
图像查看器 | EoG (Eye of GNOME)
密码和密钥 | Seahorse

## 配置

GNOME 系统设置面板（gnome-control-center）和 GNOME 应用使用 dconf 配置系统存储设置。

您可以使用 `gsettings` 或 `dconf` 命令行工具直接访问 dconf 数据库。这也可以让你修改用户界面不公开的设置。

直到 GNOME 3.24，设置由 GNOME 设置进程应用，其也可以在 GNOME 会话之外通过以下命令运行：

     $ nohup /usr/lib/gnome-settings-daemon/gnome-settings-daemon > /dev/null &

然而 GNOME 3.24 通过几个相互独立的设置插件 `/usr/lib/gnome-settings-daemon/gsd-*` 取代了 GNOME 设置进程。这些插件通过 `/etc/xdg/autostart` (org.gnome.SettingsDaemon.*.desktop) 下的桌面文件进行控制。如果需要在 GNOME 会话之外运行这些插件，您需要复制或编辑相应的桌面条目到 `~/.config/autostart`。

配置通常是用户特定的，本文将不介绍如何为多个用户创建配置模板。

### GNOME 系统设置

#### 色彩

`colord` 守护进程会读取显示器的 EDID 信息并提取出合适的色彩配置内容。大多数情况下，色彩配置都是正确的，不需要额外设置；但是对于某些偏差情况或使用较旧的显示器时，可以把色彩配置文件放在 `~/.local/share/icc/` 下并被指向。

#### 夜间模式

GNOME 内置了类似于 Redshift 的蓝光过滤功能。夜间模式可以在设置面板中启动及自定义启动时间。此外，夜间模式的开尔文温度可以使用以下 dconf 设置进行调整，5000 是一个示例值：

    $ gsettings set org.gnome.settings-daemon.plugins.color night-light-temperature 5000

#### 日期与时间

如果系统已有配置好的 网络时间协议 守护进程，它同样会对 GNOME 起作用。如果需要，同步设置可以在菜单内设为手动控制。

如果需要在顶栏内显示日期，请运行：

    $ gsettings set org.gnome.desktop.interface clock-show-date true

另外，如果需要在顶栏的日历中显示周数，请运行：

    $ gsettings set org.gnome.shell.calendar show-weekdate true

#### 默认应用程序

首次安装 GNOME 时，您可能会发现某些协议由错误的应用程序处理。比如说，视频被 totem 打开而不是以前使用的 VLC。某些关联可以通过系统设置进行设置：详细信息 > 默认应用程序。

有关其他协议和方法，请参阅默认应用程序进行配置。

#### 鼠标和触摸板

大多数触摸板设置可以通过系统设置进行设置：设备 > 鼠标和触摸板。

根据您的设备，其他配置可能可用，但不会显示在默认界面内，例如不同的触摸板点击方法：

    $ gsettings range org.gnome.desktop.peripherals.touchpad click-method

    enum
    'default'
    'none'
    'areas'
    'fingers'

手动设置:

    $ gsettings set org.gnome.desktop.peripherals.touchpad click-method 'fingers'

或通过 gnome-tweaks。

注意： GNOME 不支持 synaptics 并默认使用 libinput。参考 这个缺陷报告。

#### 网络

NetworkManager 是 GNOME 项目下用于控制网络设置的工具。 安装 networkmanager 软件包并启用 `NetworkManager.service` 单元。

虽然可以使用任何其他网络管理器，但 NetworkManager 可以通过网络设置和状态指示器 network-manager-applet（ GNOME不需要 ）整合到桌面环境当中。

#### 在线帐户

GNOME 聊天程序 empathyAUR 的后端以及 GNOME 系统设置面板中的在线账户部分由另一个软件包组 telepathy 提供。相关请看 Unable to add accounts in Empathy and GNOME Online Accounts 部分提供的帮助。部分在线账户，比如 ownCloud，需要安装 gvfs-goa 以在 GNOME 应用比如 GNOME 文件 以及 GNOME 文档中发挥全部功能[2]。

#### 搜索

GNOME shell在按下`Super`键并开始输入时会启动搜索。tracker软件包默认作为gnome组的一部分被安装。它提供一个应用和数据的索引数据库。它可以被“搜索及索引”菜单项配置，通过"tracker-control"监视状态。它在用户登录时自动被"gnome-session"启动。索引可以被`tracker-control -s`手动启动。搜索设置也可以在“系统设置面板”配置。

Tracker数据库可以通过"tracker-sparql“命令查询。更多信息请访问它的手册页tracker-sparql(1)

### 高级设置

As noted above, many configuration options such as changing the GTK+ theme or the window manager theme are not exposed in the GNOME System Settings panel (gnome-control-center). Those users that want to configure these settings may wish to use the GNOME Tweaks (gnome-tweaks), a convenient graphical tool which exposes many of these settings.

GNOME settings (which are stored in the DConf database) can also be configured using the dconf-editor (a graphical DConf configuration tool) or the gsettings command line tool. The GNOME Tweaks does not do anything else in the background of the GUI; note though that you will not find all settings described in the following sections in it.

#### 外观

##### GTK+主题和图标主题

除了以下所述的直接从底层修改主题的方法，您也可以使用 gnome-tweak-tool 工具进行修改。 安装一个新的主题和图标集，分别添加相关的`~/.local/share/themes` 或者 `~/.local/share/icons`（或者将主题添加至 `/usr/share/` 以在系统全局生效。）他们和其他GUI设置也可以在 `~/.config/gtk-3.0/settings.ini`中定义:

    ~/.config/gtk-3.0/settings.ini

    [Settings]
    gtk-theme-name = Adwaita
    # 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

其他主题的站点:

- DeviantArt.
- gnome-look.org.
- GTK3 themes in the AUR.
- Cursor themes in the AUR.
- Icon themes in the AUR.

一旦安装，就可以使用 GNOME Tweak Tool或GSettings -参阅下面的GSettings命令：

对于GTK+主题：

    $ gsettings set org.gnome.desktop.interface gtk-theme theme-name

对于图标主题

    $ gsettings set org.gnome.desktop.interface icon-theme theme-name

###### 全局暗色主题

GNOME默认使用Adwaita light主题，不过暗色主题(称之为全局黑色主题)也存在并可通过the Tweaks或者是编辑GTK+ 3设置文件 - 详细访问 GTK+#Dark theme variant。一些应用比如图像查看器（“eog”）默认使用暗色主题。值得注意的是，全局黑色主题只对GTK+ 3应用有效；部分GTK+ 3应用也许只有对全局主题的部分支持。未来也许将添加对全局暗色主题对Qt及GTK+ 2的支持。

##### 窗口管理器主题

窗口管理器的主题跟随GTK+ 主题。不赞成使用`org.gnome.desktop.wm.preferences theme`设置主题，并且这样也会被GNOME忽视。

###### 标题栏的高度

注意： 下面配置会修改 GNOME 终端和 Chromium 的标题栏高度，但是不会影响 Nautilus。

    ~/.config/gtk-3.0/gtk.css

    headerbar.default-decoration {
     padding-top: 0px;
     padding-bottom: 0px;
     min-height: 0px;
     font-size: 0.6em;
    }

    headerbar.default-decoration button.titlebutton {
     padding: 0px;
     min-height: 0px;
    }

更多信息请阅读[3]。

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

设置 GNOME 窗口管理器顺序 (Mutter, Metacity):

    $ gsettings set org.gnome.desktop.wm.preferences button-layout ':minimize,maximize,close'

提示： 冒号表示窗口标题栏的按钮会出现在哪一方

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

- 安装 gnome-shell-extension-pixel-saver-gitAUR或gnome-shell-extension-pixel-saverAUR。最大化的窗口的标题栏将与活动栏整合以节省空间。

- 安装 mutter-hide-legacy-decorationsAUR。它改变窗口管理器的默认设置以在应用最大化或平铺至一边时自动在传统（无顶栏）的应用中隐藏标题栏。

- 安装 gnome-shell-extension-no-title-bar-gitAUR 或者 gnome-shell-extension-no-title-barAUR，最大化的窗口的标题栏将与活动栏整合以节省空间。

##### GNOME Shell主题

GNOME Shell本身的主题是可配置的。首先确认您已安装gnome-shell-extensions软件包以应用Shell主题。然后通过GNOME Tweaks或通过GNOME Shell Extensions 网站启用“User Themes”扩展。Shel主题可以通过使用GNOME Tweaks软件加载并选用。

AUR中中有大量可用的GNOME Shell主题。

Shell主题也可在gnome-look.org下载。

##### 菜单图标

默认的GNOME设置不在菜单上显示图标。要在菜单上显示图标，运行以下命令：

    $ gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/ButtonImages': <1>, 'Gtk/MenuImages': <1>}"

#### 桌面

各种桌面设置可以应用。

##### 桌面图标

GNOME 3.28之前，桌面图标通过Files在桌面上绘制一个透明的带图标的窗口实现。在GNOME 3.28中，该功能被移除，桌面图标不再在GNOME上可用。可能的方案包括使用Nemo（GNOME File的一个分支，目前仍支持桌面图标）或安装gnome-shell-extension-desktop-iconsAUR插件以部分复刻GNOME 3.26以下支持的桌面图标功能。更多信息请访问Arch forum thread。

##### 锁屏和背景

在设置桌面及锁屏背景的时候，注意Picture标签下只显示`~/Pictures`文件夹下的图片。如果您想使用不在该文件夹下的图片，请使用下列命令：

对于桌面背景：

    $ gsettings set org.gnome.desktop.background picture-uri 'file:///path/to/my/picture.jpg'

对于锁屏背景

    $ gsettings set org.gnome.desktop.screensaver picture-uri 'file:///path/to/my/picture.jpg'

#### 扩展

在 extensions.gnome.org 里可以找到扩展。只要把屏幕做上方的按钮按成 ON 然后点击弹出窗口里的 Install 就能够安装并启用那个插件了。已经安装的扩展可以在 extensions.gnome.org/local 里查看，而且还能看到哪个能够升级。用 gnome-tweaks 也可以开关某个扩展。

注意： GNOME/Web 可以直接安装 extensions.gnome.org 里的扩展，对于其他的浏览器，就要先安装 chrome-gnome-shellAUR ，然后还要安装对应的浏览器插件。

GNOME Shell 的插件自定义可以是限定于某个用户的，也可以是全局的。用 pacman 安装的扩展是全局的，而且会随着系统更新而更新。

gnome-shell-extensions 提供了包含在 GNOME project 里的（即有官方支持的）插件包，其中包含的插件有很多都会被 GNOME Classic session 使用。如果想要一个任务栏但是又不想用 GNOME Classic session，那就可以用 Window list 扩展。

用以下命令可以查看现在启用了的扩展：

    $ gsettings get org.gnome.shell enabled-extensions

更多信息可以参考：[4]。

#### 输入法

GNOME集成了的通过IBus的输入法, 只有ibus和添加想要的输入法引擎 (例如:ibus-libpinyin for Intelligent Pinyin) 需要安装，安装后，输入法引擎可以加入GNOME的区域和语言设置键盘布局。

#### 字体

提示： 如果您把"Scaling factor"调至1.00以上的某值，辅助功能菜单将自动启用

GNOME可以设置窗体标题，界面（应用），文档及等宽字体。查看Tweaks下的字体选项卡以获得相关选项。

对于字体渲染来说，RGBA可能适合更多的显示器类型，如果字体看起来过分拥挤，可以将字体渲染调至“Slight”或“None”。

#### 自启动应用程序

GNOME 实现了 XDG Autostart。

gnome-tweaks 程序可以用来管理自启动项。安装后按下 Super 键，搜索 Tweaks即可打开。

提示： 如果Tweaks中自启动应用选项下加号按钮为灰色不可用，尝试在终端下通过 `gnome-tweak-tool`命令启动Tweaks。详情访问 [5]。
注意： 已经弃用的 "gnome-session-properties" 对话框可以通过安装 gnome-session-propertiesAUR 添加。

#### 电源

你可能希望修改基本的电源管理设置（以下的设置以笔记本电脑用户为例，请按需调整）：

    $ gsettings set org.gnome.settings-daemon.plugins.power button-power hibernate
    $ gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 3600
    $ gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type hibernate
    $ gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 1800
    $ gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type hibernate
    $ gsettings set org.gnome.desktop.lockdown disable-lock-screen true

如需在合上盖子后依然保持显示器开启：

    $ gsettings set org.gnome.settings-daemon.plugins.xrandr default-monitors-setup do-nothing

GNOME 3.24中不建议使用以下设置：

    org.gnome.settings-daemon.plugins.power button-hibernate
    org.gnome.settings-daemon.plugins.power button-power
    org.gnome.settings-daemon.plugins.power button-sleep
    org.gnome.settings-daemon.plugins.power button-suspend
    org.gnome.settings-daemon.plugins.power critical-battery-action

##### 配置合上盖子时的行为

GNOME TWEAK Tool 自 3.17.1 开始，可以阻止 systemd 在“合上盖子”这一 ACPI 事件发生后采取默认行动。[6] 若想要阻止 systemd 的默认行为，打开 Tweak Tool，在“电源”标签页下选择“合上盖子后不待机”的选项。此选项意味着在盖子合上后，系统将不会默认待机，而是不采取任何措施。如果选择了此选项，一个自启动项目`~/.config/autostart/ignore-lid-switch-tweak.desktop`将会被创建，用于阻止systemd的默认行为。

如果你在合上盖子后既不希望系统待机，也不希望系统不动于衷，你首先要确保你并没有打开上述的选项，然后再配置systemd的`HandleLidSwitch=默认行为`选项，详见Power management#ACPI events中的说明。

##### 修改电池电量严重不足时的行为

设置面板不提供对电池电量严重不足行为的设置。这些设置也从dconf中移除。不过它们现在由uppower管理。按需编辑`/etc/UPower/Upower.conf`中upower设置。

    /etc/UPower/UPower.conf

    PercentageLow=10
    PercentageCritical=3
    PercentageAction=2
    CriticalPowerAction=HybridSleep

#### 通过应用文件夹整理应用

{{提示| gnome-catgen (gnome-catgen-gitAUR) 脚本允许您通过创建`~/.local/share/applications-categories`}下与分类同名的文件并在文件中包含您想包括在内的应用。或者，您可以使其在没有文件夹的情况下遍历各个应用直到您摁下ctrl-c或遍历完应用，然后输入想要的文件夹名称}

在dconf-editor中导航至 `org.gnome.desktop.app-folders` 并设置`folder-children`的值为一个由逗号分隔的文件夹的序列:

    ['Utilities', 'Sundry']

使用`gsettings`加入应用:

    $ gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/Sundry/ apps "['alacarte.desktop', 'dconf-editor.desktop']"

上述命令将`alacarte.desktop`及`dconf-editor.desktop`加入到Sundry文件夹。 该命令也创建`org.gnome.desktop.app-folders.folders.Sundry`。

要显示文件夹名称（如果其在应用上部没有显示名称）：

    $ gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/Sundry/ name "Sundry"

应用也可以通过它们的分类整理 (在它们的.desktop文件中):

    $ gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/Sundry/ categories "['Office']"

如果某一个应用不想被加入某一文件夹，运行下列命令以设置例外:

    $ gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/Sundry/ excluded-apps "['libreoffice-draw.desktop']"

详情参考app-folders schema.

### 使用其他的 window manager

GNOME Shell 不支持更改 window manager, 但是 GNOME Flashback 提供使用 Metacity 和 Compiz 的session。此外，可以通过 自定义 GNOME sessions 来使用别的组件。

## 参见

- 官方网站
- GNOME-shell 扩展
- 主题、图标和壁纸：
  - GNOME Art
  - GNOME 外观
- GTK/GNOME 程序：
  - GNOME 文件管理
  - GNOME 项目列表
- 自定义 GNOME Shell
- GNOME 代码和镜像:
  - GNOME Git 仓库
  - GNOME Github 镜像

Category:

- Desktop environments (简体中文)

Hidden category:

- Pages with broken package links