GNOME (简体中文)
GNOME(读音为/(ɡ)noʊm/)是一个追求简单易用的桌面环境。它由 GNOME项目设计,并且完全由自由开源的软件组成。GNOME默认使用 Wayland 而不是 Xorg 作为显示服务器,并同时提供多个对话可供选择:
- GNOME是在Wayland上运行GNOME Shell的默认选项。传统的X应用使用Xwayland运行。
- GNOME Classic通过特定的扩展和数值,提供了“传统的桌面体验”(类似GNOME2的界面)。因此,它是GNOME Shell的定制样式,而非真正的不同模式Thus。
- GNOME on Xorg使用Xorg运行GNOME Shell。
安装
有两个软件组可用:
- gnome-extra包含其它GNOME应用,如邮件客户端、IRC客户端、GNOME Tweaks和一些游戏。请注意,这个组建立在gnome之上。
GNOME的基础桌面环境由Mutter窗口管理器的插件GNOME Shell组成。可以用gnome-shell单独安装它。
也可以使用不稳定版本,见Official repositories#gnome-unstable.
运行 GNOME
GNOME 可以使用显示管理器以图形方式启动,也可以从控制台手动启动(可能会缺少某些功能)。gnome的显示管理器是GDM。
图形界面启动
如果安装了gnome并希望GNOME在下次启动时自动启动, 请启用gdm.service
,随后可以在显示管理器的会话菜单中选择想要使用的会话:GNOME, GNOME Classic (仅在gnome-shell-extensions 已安装时显示), 或GNOME on Xorg。
If you prefer to start GNOME right away, thereby avoiding a reboot, start the aforementioned gdm.service
from a graphically unoccupied tty instead.
如果想立即启动GNOME以避免重启,可以从一个没有图形占用的tty上启动gdm.service
以代替。
手动启动
Xorg 会话
- 对于 GNOME on Xorg 会话,在
~/.xinitrc
中添加(详见[1]):export XDG_SESSION_TYPE=x11 export GDK_BACKEND=x11 exec gnome-session
- 对于 GNOME Classic 会话,在
~/.xinitrc
中添加:export XDG_CURRENT_DESKTOP=GNOME-Classic:GNOME export GNOME_SHELL_SESSION_MODE=classic exec gnome-session
修改完 ~/.xinitrc
后,即可使用 startx
启动 GNOME(有关其它详细信息,例如如何保留 logind 会话,详见 xinitrc)。设置完 ~/.xinitrc
后,也可以设定在登录时自动启动X。例如要在tty1上默认启动,可以在.bash_profile
中添加:
if [[ -z $DISPLAY && $(tty) == /dev/tty1 ]]; then XDG_SESSION_TYPE=x11 GDK_BACKEND=x11 exec startx fi
Wayland 会话
可以使用 XDG_SESSION_TYPE=wayland dbus-run-session gnome-session
手动启动 Wayland 会话。或者,可以在任何可用的tty直接调用带wayland选项的gnome-shell
:
$ gnome-shell --wayland
请注意,手动调用Gnome不需要gdm
(因此也不需要附带的gdm.service
),因此对于安装了Gnome最小安装的用户来说,可以根据个人喜好,选择一些包含在更广泛的gnome
组中的软件包。
若要在 tty1 登录时启动,将以下内容添加到 .bash_profile
中。Firefox和Qt应用不遵守XDG_SESSION_TYPE
,所以最好给它们加上变量:
if [[ -z $DISPLAY && $(tty) == /dev/tty1 && $XDG_SESSION_TYPE == tty ]]; then MOZ_ENABLE_WAYLAND=1 QT_QPA_PLATFORM=wayland XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session fi
Wayland中的GNOME应用
在使用 GNOME 会话时,GNOME 应用将使用 Wayland 运行。出于调试需要, https://docs.gtk.org/gtk3/running.html 和 https://docs.gtk.org/gtk4/running.html 列出的选项和环境变量。
浏览
GNOME Shell cheat sheet 中解释了如何高效地使用 GNOME shell,它展示了 GNOME shell 的特色和快捷键,包括切换任务,使用键盘,窗口控制,面板,概览模式等等。以下是部分常用的快捷键:
-
Super+m
:显示消息列表 -
Super+a
:显示应用菜单 -
Alt+Tab
:切换当前使用的应用 -
Alt+`
(美式键盘Tab
上面的按键):切换正在前台使用的应用的窗口 -
Alt+F2
,然后输入r
或restart
:在图形界面出问题时重启界面(仅用于X/传统模式,不适用于Wayland模式)。
更多快捷键见键盘导航。
Alt+Tab
只在当前工作区切换应用,可以将current-workspace-only
设为true
:
$ gsettings set org.gnome.shell.app-switcher current-workspace-only true
遗留名称
当前 | 遗留 |
---|---|
文件 | Nautilus |
Web | Epiphany |
视频 | Totem |
主菜单 | Alacarte |
文档查看器 | Evince |
磁盘使用情况分析器 | Baobab |
图像查看器 | EoG (Eye of GNOME) |
密码和密钥 | Seahorse |
翻译编辑器 | Gtranslator |
配置
GNOME系统设置面板(gnome-control-center)和GNOME应用使用dconf配置系统存储设置。
您可以使用gsettings(1)命令行工具直接访问 dconf 数据库。这也可以让您修改用户界面不公开的设置。Command line tool dconf(1) can directly modify the underlying database, bypassing validation.
直到GNOME 3.24,设置由GNOME设置进程应用(位于/usr/lib/gnome-settings-daemon/gnome-settings-daemon
),其也可以在GNOME会话之外运行。
然而GNOME 3.24用几个相互独立的设置插件(/usr/lib/gnome-settings-daemon/gsd-*
,后来移动到/usr/lib/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 起作用。如果需要,同步设置可以在菜单内设为手动控制。
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设置。
网络
NetworkManager 是GNOME项目中控制网络设置的工具,它也是gnome的一部分。如果尚未安装,则安装networkmanager软件包并启用NetworkManager.service
systemd单元。
虽然可以使用任何其它网络管理器,但 NetworkManager 可以使用网络设置和状态指示器 network-manager-applet( GNOME不需要 )整合到桌面环境当中。
在线帐户
部分在线账户,比如 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)。
高级设置
如上文所述,改变GTK主题或窗口管理器主题等选项,并不会出现在GNOME设置(gnome-control-center)里。想要修改这些设置可以使用GNOME Tweaks (gnome-tweaks),这是一个展示了许多这类设置的图形化工具。
(存储在 DConf 数据库中的)GNOME设置也可以使用dconf-editor(1)(一个图形化的DConf配置工具)或gsettings命令行工具进行配置。GNOME Tweaks 不会在 GUI 背后做任何其他事情;note though that you will not find all settings described in the following sections in it.
外观
主题
GNOME默认使用Adwaita。若要只将Adwaita-dark应用于GTK 2应用,请使用以下符号链接:
$ ln -s /usr/share/themes/Adwaita-dark ~/.themes/Adwaita
若要选择新的主题,(将它们移到适当的目录中,并)使用GNOME Tweaks或下面的GSettings命令。
对于GTK主题:
$ gsettings set org.gnome.desktop.interface gtk-theme theme-name
对于图标主题:
$ gsettings set org.gnome.desktop.interface icon-theme theme-name
org.gnome.desktop.wm.preferences theme
的方法已被废弃和忽略。标题栏高度
~/.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'
最大化时隐藏标题栏
- Install gnome-shell-extension-gtktitlebar-gitAUR,在最大化时移除标题栏,非GTK窗口.
- 安装 gnome-shell-extension-pixel-saver-gitAUR或gnome-shell-extension-pixel-saverAUR。最大化窗口的标题栏将与活动栏整合以节省空间。
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里下载。
AppIndicators/顶部菜单栏图标
To enable AppIndicators, which is useful for controlling/monitoring certain applications running in the background, Install gnome-shell-extension-appindicator or gnome-shell-extension-appindicator-gitAUR, restart the GNOME Shell, then enable the AppIndicator extension in the GNOME Extensions application or by running $ gnome-extensions enable $(gnome-extensions list | grep -m 1 appindicatorsupport)
应用列表中的文件夹
~/.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']"
详情参考[4]和Gentoo:Gnome Applications Folders.
自启动
GNOME提供XDG Autostart。
gnome-tweaks 程序可以用来管理自启动项。
gnome-tweaks
命令启动Tweaks。见此贴。桌面
桌面图标
GNOME 3.28之前,桌面图标通过Files在桌面上绘制一个透明的带图标的窗口实现。在GNOME 3.28中,该功能被移除,桌面图标不再在GNOME上可用。可能的方案包括使用Nemo(GNOME File的一个分支,目前仍支持桌面图标)或安装gnome-shell-extension-desktop-iconsAUR插件以复刻GNOME 3.26以下支持的桌面图标功能,但略有差异。详见Arch论坛中的讨论。
锁屏和背景
在设置桌面及锁屏背景的时候,注意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'
禁用顶部左侧的热区
从GNOME 3.34开始,可以使用以下命令禁用它:
$ gsettings set org.gnome.desktop.interface enable-hot-corners false
或在gnome-tweaks中的顶栏 > 活动概览热区中禁用。
GNOME 42后,可在系统设置的多任务选项中禁用。
启动到概览模式
从GNOME 40开始,桌面会直接启动到概览模式,而不是桌面(如以前的版本)。若要模仿经典的行为,可以安装No overview at start-up插件。
详见此讨论。
扩展
在 extensions.gnome.org 里可以找到扩展。只要把屏幕做上方的按钮按成 ON 然后点击弹出窗口里的 Install 就能够安装并启用那个插件了。已经安装的扩展可以在 extensions.gnome.org/local 里查看,而且还能看到哪个能够升级。用gnome-tweaks也可以开关某个扩展。
GNOME Shell 的插件自定义可以是限定于某个用户的,也可以是全局的。用 pacman 安装的扩展是全局的,而且会随着系统更新而更新。
gnome-shell-extensions 提供了包含在 GNOME project 里的(即有官方支持的)插件包,其中包含的插件有很多都会被 GNOME Classic session 使用。如果想要一个任务栏但是又不想用 GNOME Classic session,那就可以用 Window list 扩展。
用以下命令查看已启用的扩展:
$ gsettings get org.gnome.shell enabled-extensions
上述命令可能会列出已经删除的扩展。若要只列出已启用和已安装的扩展,使用gnome-extensions:
$ gnome-extensions list --enabled
更多有关GNOME Shell的信息,见[5]。
字体
GNOME可以设置窗体标题,界面(应用),文档及等宽字体。查看Tweaks下的字体选项卡以获得相关选项。
对于字体渲染来说,RGBA可能适合更多的显示器类型,如果字体看起来过分拥挤,可以将字体渲染调至“Slight”或“None”。
WEBP,缩略图
安装webp-pixbuf-loader使GNOME的图像查看器(eog)能够查看WEBP图像并为其创建缩略图,以便在GNOME Files中查看。
输入法
GNOME集成了的通过IBus的输入法, 只有ibus和添加想要的输入法引擎 (例如:ibus-libpinyin for Intelligent Pinyin) 需要安装,安装后,输入法引擎可以加入GNOME的区域和语言设置键盘布局。
Keyboard Layout quirks
If you are using an alternative keyboard layout like Neo2 which uses multiple layers/modifiers, you might need to go to Keyboard > Type Special Characters in GNOME Settings (gnome-control-center) and change the Alternate Characters Key away from Right Alt so that it can be used as a native modifier of the keyboard layout. Setting it to e.g. Left Alt prevents Alt+Tab, so be careful what you change it to. Without this change, your left Mod3 key might work, but the right one (AltGr) does not. (As of 2021-05-18)
电源
当您使用笔记本时,可能想修改以下设置,包括控制闲置、按下电源按钮和盖子关闭时的行为。
$ 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的设置面板并没有改变合盖触发动作的选项,但gnome-tweaks可以覆盖systemd的设置。在通用选项卡中,关闭笔记本电脑盖子关闭时挂起。这样,系统就不会在合盖时挂起到RAM(S3)。
要系统级改变开关动作,请先确保上述设置没有关闭,并编辑/etc/systemd/logind.conf
中的systemd设置。若要合盖时不挂起,请设置HandleLidSwitch=ignore
,详见Power management#ACPI events。
修改电池电量严重不足时的行为
设置面板不提供对电池电量严重不足行为的设置。这些设置也从dconf中移除。不过它们现在由uppower管理。按需编辑/etc/UPower/Upower.conf
中upower设置。
/etc/UPower/UPower.conf
PercentageLow=10 PercentageCritical=3 PercentageAction=2 CriticalPowerAction=HybridSleep
电源模式
安装gnome-control-center的可选依赖power-profiles-daemon以支持电源配置文件。
由于gnome-shell和GNOME设置都请求在启动时激活power-profiles-daemon
服务,所以不需要特意将其启动或启用。
When the service is active, power profiles can be managed through the Power section of GNOME Settings and in the system menu. 当服务激活时,可以通过GNOME设置的电源选项和系统菜单管理电源配置文件。
使用其它window manager
GNOME Shell 不支持更改 window manager, 但是 GNOME Flashback 提供使用 Metacity 和 Compiz 的session。此外,可以通过 自定义 GNOME sessions 来使用别的组件。
参见
- 官方网站
- Contributing to GNOME, feature requests, bugs, code
- GNOME-shell 扩展
- 主题、图标和壁纸:
- GTK/GNOME 程序:
- 自定义 GNOME Shell
- GNOME 代码和镜像: