GNOME
GNOME(讀音為/(ɡ)noʊm/)是一個追求簡單易用的桌面環境。它由 GNOME項目設計,並且完全由自由開源的軟件組成。GNOME默認使用 Wayland 而不是 Xorg 作為顯示伺服器,並同時提供多個對話可供選擇:
- GNOME是在Wayland上運行GNOME Shell的默認選項。傳統的X應用使用Xwayland運行。
- GNOME Classic通過特定的擴展和數值,提供了「傳統的桌面體驗」(類似GNOME2的界面)。因此,它是GNOME Shell的定製樣式,而非真正的不同模式。
- GNOME on Xorg使用Xorg運行GNOME Shell。
安裝[編輯 | 編輯原始碼]
有兩個軟件組可用:
- gnome包組 包含基本的桌面環境和一些集成良好的應用
- gnome-extra包組 包含其它GNOME應用,如郵件客户端、IRC客户端、GNOME Tweaks 和一些遊戲。請注意,這個組建立在 gnome包組 之上。
GNOME 的基礎桌面環境由 Mutter 窗口管理器的插件 GNOME Shell 組成。可以用 gnome-shell包 單獨安裝它。
也可以使用不穩定版本,見官方軟件倉庫#gnome-unstable。
運行 GNOME[編輯 | 編輯原始碼]
GNOME 可以使用顯示管理器以圖形方式啟動,也可以從控制台手動啟動(可能會缺少某些功能)。gnome包組的顯示管理器是GDM。
圖形界面啟動[編輯 | 編輯原始碼]
如果安裝了gnome包組並希望GNOME在下次啟動時自動啟動, 請啟用 gdm.service
,隨後可以在顯示管理器的會話菜單中選擇想要使用的會話:GNOME、GNOME Classic (僅在gnome-shell-extensions包 已安裝時顯示)或GNOME on Xorg。Wayland 會話可以在 GDM 配置中啟用/禁用。
如果想立即啟動 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 數據庫。這也可以讓您修改用户界面不公開的設置。命令行工具 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包設置。
網絡[編輯 | 編輯原始碼]
NetworkManager 是GNOME項目中控制網絡設置的工具,它也是gnome包組的一部分。如果尚未安裝,則安裝networkmanager包軟件包並啟用NetworkManager.service
systemd單元。
雖然可以使用任何其它網絡管理器,但 NetworkManager 可以使用網絡設置和狀態指示器 network-manager-applet包( GNOME不需要 )整合到桌面環境當中。
在線帳户[編輯 | 編輯原始碼]
部分在線賬户,比如 ownCloud,需要安裝 gvfs-goa包 以在 GNOME 應用比如 GNOME 文件 以及 GNOME 文檔中發揮全部功能[2]。
詳見在線賬户。
搜索[編輯 | 編輯原始碼]
GNOME shell在按下Super
鍵並開始輸入時會啟動搜索。tracker3包軟件包是tracker3-miners包的依賴項,默認作為gnome包組組的一部分被安裝。它提供一個應用和數據的索引數據庫。它可以被「搜索及索引」菜單項配置,通過tracker3 status
監視狀態。它在用户登錄時自動被"gnome-session"啟動。索引可以被tracker3 daemon -s
手動啟動。搜索設置也可以在系統設置中配置。
Tracker數據庫可以使用tracker3 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'
最大化時隱藏標題欄[編輯 | 編輯原始碼]
- 安裝 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/頂部菜單欄圖標[編輯 | 編輯原始碼]
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)
來以命令行方式啟用它。
應用列表中的文件夾[編輯 | 編輯原始碼]
~/.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的區域和語言設置鍵盤佈局。
非主流鍵盤佈局[編輯 | 編輯原始碼]
如果您使用的是像Neo2這樣使用多層/修飾鍵的替代鍵盤佈局,您可能需要轉到 GNOME。設置 (gnome-control-center)中的 Keyboard > Type Special Characters 將 Alternate Characters Key 從 Right 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
筆記本合蓋時不掛起[編輯 | 編輯原始碼]
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
服務,所以不需要特意將其啟動/啟用。
當服務激活時,可以通過 GNOME 設置的電源選項和系統菜單管理電源配置文件。
使用不同的窗口管理器[編輯 | 編輯原始碼]
GNOME Shell 不支持更改窗口管理器, 但是 GNOME Flashback 提供使用 Metacity 和 Compiz 的session。此外,可以通過 自定義 GNOME sessions 來使用別的組件。
參見[編輯 | 編輯原始碼]
- 官方網站
- Contributing to GNOME, feature requests, bugs, code
- GNOME-shell 擴展
- 主題、圖標和壁紙:
- GTK/GNOME 程序:
- 自定義 GNOME Shell
- GNOME 代碼和鏡像: