GNOME
GNOME(讀音為/(ɡ)noʊm/)是一個追求簡單易用的桌面環境。它由 GNOME項目設計,並且完全由自由開源的軟體組成。GNOME默認使用 Wayland 作為顯示伺服器,並同時提供多個對話可供選擇:
- GNOME是在Wayland上運行GNOME Shell的默認選項。傳統的X應用使用Xwayland運行。
- GNOME Classic通過特定的擴展和數值,提供了「傳統的桌面體驗」(類似GNOME2的界面)。因此,它是GNOME Shell的定製樣式,而非真正的不同模式。
安裝
有兩個軟體組可用:
- gnome包組 包含基本的桌面環境和一些集成良好的應用
- gnome-circle包組 包含多種格外應用,極大的拓展了Gnome生態。
- gnome-extra包組 包含部分開發工具,以及其他適合Gnome的應用與遊戲。
GNOME 的基礎桌面環境由 Mutter 窗口管理器的插件 GNOME Shell 組成。可以用 gnome-shell包 單獨安裝它。
也可以使用不穩定版本,見官方軟體倉庫#gnome-unstable。
運行 GNOME
GNOME 可以使用顯示管理器以圖形方式啟動,也可以從控制台手動啟動(可能會缺少某些功能)。gnome包組的顯示管理器是GDM。
圖形界面啟動
如果安裝了gnome包組並希望GNOME在下次啟動時自動啟動, 請啟用 gdm.service,隨後可以在顯示管理器的會話菜單中選擇想要使用的會話:GNOME、GNOME Classic (僅在gnome-shell-extensions包 已安裝時顯示)。
如果想立即啟動 GNOME 以避免重啟,可以從一個沒有被圖形占用的 tty 上啟動 gdm.service。
手動啟動
會話類型
Gnome會話繼承了systemd的會話類型。當會話開始時,systemd的會話類型在會話啟動時由XDG_SESSION_TYPE環境變量決定,並在啟動後只能由該會話上的控制器決定。詳見 Github。
因此僅僅在登錄後設置XDG_SESSION_TYPE 並不起作用。因此應創建一個systemd drop-in 文件給getty設置環境變量:
/etc/systemd/system/getty@tty1.service.d/wayland.conf
[Service] Environment=XDG_SESSION_TYPE=wayland
重新加載後檢查會話類型:
$ loginctl session-status
啟動會話
在正確設置會話類型後,可以通過以下命令手動啟動會話:
$ gnome-session
由於直接運行gnome-shell --wayland缺乏會話管理,所以並不推薦。
請注意,手動調用Gnome不需要gdm(因此也不需要附帶的gdm.service),因此對於安裝了Gnome最小安裝的用戶來說,可以根據個人喜好,選擇一些包含在更廣泛的gnome組中的軟體包。
若要在 tty1 登錄時啟動,將以下內容添加到 .bash_profile 中:
gnome-session --no-reexec
Firefox和Qt應用不遵守XDG_SESSION_TYPE,所以最好給它們加上變量:
if -z $DISPLAY && $(tty) == /dev/tty1 && $XDG_SESSION_TYPE == wayland ; then MOZ_ENABLE_WAYLAND=1 QT_QPA_PLATFORM=wayland exec gnome-session --no-reexec 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模式)。
如需改變默認配置,使其更類似Windows,見 GNOME/提示與技巧#導航。
更多快捷鍵見鍵盤導航。
遺留名稱
| 當前 | 遺留 |
|---|---|
| 文件 | Nautilus |
| Web | Epiphany |
| 視頻 | Totem |
| 主菜單 | Alacarte |
| 文檔查看器 | Evince |
| 磁碟使用情況分析器 | Baobab |
| 圖像查看器 | EoG (Eye of GNOME) |
| 密碼和密鑰 | Seahorse |
| 翻譯編輯器 | Gtranslator |
配置
GNOME系統設置面板(gnome-control-center)和GNOME應用使用dconf配置系統存儲設置。
您可以使用gsettings(1)命令行工具直接訪問 dconf 資料庫。這也可以讓您修改用戶界面不公開的設置。命令行工具 dconf(1) 可以直接修改底層資料庫,跳過驗證過程。
直到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包設置。
使用滑鼠更改窗口大小
默認情況下,您可以使用滑鼠移動窗口,方法是按住 Super,單擊並按住滑鼠左鍵並拖動滑鼠。
此外,您可以通過按住 Super、單擊並按住滑鼠右鍵並拖動滑鼠來啟用滑鼠調整窗口大小:
$ gsettings set org.gnome.desktop.wm.preferences resize-with-right-button true
如果您不喜歡 Super 鍵,還可以將修飾鍵更改為其他鍵,例如 Alt 或 Ctrl:
$ gsettings set org.gnome.desktop.wm.preferences mouse-button-modifier "'<Alt>'"
網絡
NetworkManager 是GNOME項目中控制網絡設置的工具。如果尚未安裝,則安裝networkmanager包軟體包並啟用NetworkManager.service 。
雖然可以使用任何其它網絡管理器,但 NetworkManager 可以使用整合到桌面環境的網絡設置和狀態指示器( network-manager-applet包,不必要安裝 )。
在線帳戶
部分在線帳戶,比如 ownCloud,需要安裝 gvfs-goa包 和gvfs-dnssd包以在 GNOME 應用比如 GNOME 文件以及 GNOME 文檔中發揮全部功能[3]。
詳見在線帳戶。
搜索
GNOME shell在按下Super鍵並開始輸入時會啟動搜索。localsearch包作為gnome包組中nautilus包的依賴被默認安裝。它提供一個應用和數據的索引資料庫。它可以被設置中「搜索」菜單項配置。它在用戶登錄時自動被gnome-session啟動。
localsearch 並不自動遞歸用戶的家目錄中所有的目錄,所以你可能需要在 搜索 > 搜索位置 中添加自定義的路徑。創建一個名為 .nomedia 的空文件以將某個目錄從索引中排除。
可通過 localsearch status 查看當前索引狀態。搜索內容可以在命令行中被localsearch search查看,被localsearch tag編輯,以及被重置。見 localsearch help 或在線尋求參考。
tinysparql-sql被用作索引資料庫。如果需要,資料庫可以被直接查詢。
設備安全
GNOME 43 在設置中添加了一個新的設備安全面板。該功能依賴fwupd工作。見 [4]
高級設置
如上文所述,改變GTK主題或窗口管理器主題等選項,並不會出現在GNOME設置(gnome-control-center)裡。想要修改這些設置可以使用GNOME Tweaks (gnome-tweaks包),這是一個展示了許多這類設置的圖形化工具。
(存儲在 DConf 資料庫中的)GNOME設置也可以使用dconf-editor(1)(一個圖形化的DConf配置工具)或gsettings命令行工具進行配置。GNOME Tweaks 只能用於改變GUI。注意,你不一定總能看到下文描述的所有設置。
拓展
拓展的目錄位於 https://extensions.gnome.org。拓展可通過 archlinux官方倉庫 (少數), AUR或者網頁安裝。
- 此外,如果你想要從瀏覽器安裝拓展,你需要安裝 gnome-browser-connector包。如果從官方倉庫或者AUR安裝,則不需要。
- 從AUR(或者官方倉庫)安裝拓展是他們對整個系統生效(並且在使用 AUR 助手時自動更新)。
已安裝的拓展可以通過 gnome-extensions-app在圖形界面、在命令行使用gnome-extensions(1)或在瀏覽器中通過網頁配置、啟用或禁用。在瀏覽器中,如需安裝和激活拓展,請點擊右上角的ON,然後點擊彈出窗口的Install(如果該拓展並沒有被安裝)。已經安裝的拓展可在 https://extensions.gnome.org/local/查看並檢查更新。
gnome-shell-extensions包 提供了一些GNOME官方維護的非常有用的拓展。
extension-manager包 是一個用於在作業系統或用戶範圍內安裝、拆卸、啟用、禁用拓展的圖形工具。安裝前請仔細確認已知問題列表。
啟用一個拓展(默認禁用):
$ gsettings set org.gnome.shell disable-user-extensions false
列出當前啟用的拓展:
$ gsettings get org.gnome.shell enabled-extensions
上述命令可能會列出已刪除的擴展。要僅列出已啟用和安裝的擴展,請改用 gnome-extensions:
$ gnome-extensions list --enabled
關於 GNOME shell拓展的更多信息,詳見 https://extensions.gnome.org/about/.
外觀
主題
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的方法已被廢棄和忽略。標題欄按鈕排序
設置 GNOME 窗口管理器順序 (Mutter, Metacity):
$ gsettings set org.gnome.desktop.wm.preferences button-layout ':minimize,maximize,close'
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/頂部菜單欄圖標
AppIndicators 對於監控和控制後台程序很有用,其對應的軟體包是 gnome-shell-extension-appindicator包 or gnome-shell-extension-appindicator-gitAUR。安裝後重啟 GNOME Shell ,然後在 GNOME 擴展程序中啟用 AppIndicator 擴展,或者運行 $ gnome-extensions enable $(gnome-extensions list | grep -m 1 appindicatorsupport)來以命令行方式啟用它。
Shell動畫速度
GNOME shell 動畫可以被提速、降速或禁用。見GNOME/Tips and tricks#Change animation speed.
Shell 模糊效果
Blur my Shell 是一個給概覽模式頁面、Shell本身和其他部分應用添加模效果的拓展。安裝 gnome-shell-extension-blur-my-shellAUR ,或者gnome-shell-extension-blur-my-shell-gitAUR 。該拓展具有高度可自定義性,並且你可以自由選擇對哪些應用施加模糊效果。
更好的 Alt-Tab
GNOME中默認的 Alt-Tab功能非常簡單,並不展示selected windows的概覽。你可以在設置應用中將 Alt-Tab快捷鍵從 「切換應用」 改為 「切換窗口」以展示窗口概覽。
你也可以使用Coverflow Alt-Tab。這是一個拓展Alt-Tab行為的拓展,添加了一些特性使在應用程式之間切換更簡單、更好看。 安裝gnome-shell-extension-coverflow-alt-tab-gitAUR。你可以根據喜好配置該拓展。
注意:Super-`默認提供「切換窗口」功能。
自啟動
GNOME提供XDG Autostart。
gnome-tweaks包 程序可以用來管理自啟動項。
gnome-tweaks命令啟動Tweaks。見此貼。桌面
Dash to Dock
To move the dash out of the overview and turn it into a dock to以便於啟動和切換應用, 安裝 gnome-shell-extension-dash-to-dockAUR.
啟動到概覽模式
從GNOME 40開始,桌面會直接啟動到概覽模式,而不是桌面(如以前的版本)。若要模仿經典的行為,可以安裝No overview at start-up插件。
如果你在使用gnome-shell-extension-dash-to-dockAUR,你也可以在gsettings中禁用該行為。
$ gsettings set org.gnome.shell.extensions.dash-to-dock disable-overview-on-startup true
詳見此討論。
剪貼板歷史
不像其他桌面環境,GNOME 並沒有內建的管理剪貼板歷史的工具。你可以使用拓展。安裝 gnome-shell-extension-clipboard-indicatorAUR。
天氣
以展示選定地點的天氣,比如狀態、風速、氣壓等信息,請安裝 gnome-shell-extension-openweatherAUR。天氣信息實時更新。
音頻輸入輸出選擇
默認情況下,如果你想要選擇音頻輸入輸出設備或改變麥克風的音量,你需要打開GNOME控制中心進行配置。你可以安裝gnome-shell-extension-sound-output-device-chooserAUR 或者 gnome-shell-extension-sound-output-device-chooser-gitAUR以更方便地控制他們。你可以在安裝後進行更多的配置。
字體
GNOME可以設置窗體標題,界面(應用),文檔及等寬字體。查看Tweaks下的字體選項卡以獲得相關選項。
對於字體渲染來說,RGBA可能適合更多的顯示器類型,如果字體看起來過分擁擠,可以將字體渲染調至「Slight」或「None」。
輸入法
GNOME集成了的通過IBus的輸入法, 只有ibus包和添加想要的輸入法引擎 (例如:ibus-libpinyin包 for Intelligent Pinyin) 需要安裝,安裝後,輸入法引擎可以加入GNOME的區域和語言設置鍵盤布局。
非主流鍵盤布局
如果您使用的是像Neo2這樣使用多層/修飾鍵的替代鍵盤布局,您可能需要轉到 GNOME。設置 (gnome-control-center)中的 Keyboard > Type Special Characters 將 Alternate Characters Key 從 右 Alt 改為其他鍵,以便它可以作為鍵盤布局的本地修飾鍵使用。將其設置為 Left Alt 會阻止 Alt+Tab 鍵盤快捷鍵,因此請小心您所更改的內容。 如果沒有進行這個更改,您的左 Mod3 鍵可能會起作用,但右側的一個 (AltGr) 鍵可能不會起作用。(截至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
筆記本合蓋時不掛起
The settings panel of GNOME does not provide an option for the user to change the action triggered when the laptop lid is closed. To change the lid switch action system-wide, edit the systemd settings in /etc/systemd/logind.conf. To turn off suspend on lid close, set HandleLidSwitch=ignore, as described in Power management#ACPI events.
修改電池電量嚴重不足時的行為
設置面板不提供對電池電量嚴重不足行為的設置。這些設置也從dconf中移除。不過它們現在由upower管理。按需編輯/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 服務,所以不需要特意將其啟動/啟用。
當服務激活時,可以通過 GNOME 設置的電源選項和系統菜單管理電源配置文件。
錄屏
內建的截屏工具沒有默認錄屏選項。安裝 gnome-shell包的可選依賴 gst-plugin-pipewire包 以啟用錄屏功能。
使用不同的窗口管理器
GNOME Shell 不支持更改窗口管理器, 但是 GNOME Flashback 提供使用 Metacity 和 Compiz 的session。此外,可以通過自定義 GNOME sessions 來使用別的組件。
將 GNOME Shell替換為不同的 Wayland compositor 將會導致gnome-control-center包 (GNOME 設置)的部分設置顯示錯誤。gnome-control-center 依然可以正常工作,但因為 mutter包 (GNOME Shell) 無法用於提供這些設置以填充這些區域,他們將不再奇效或無法準確反映你的設置。這些設置包括藍牙,顯示以及滑鼠/觸控板等。
參見
- 官方網站
- Contributing to GNOME, feature requests, bugs, code
- GNOME-shell 擴展
- 主題、圖標和壁紙:
- GTK/GNOME 程序:
- 自定義 GNOME Shell
- GNOME 代碼和鏡像: