跳转至内容

Pantheon

来自 ArchWiki

Pantheonelementary OS 的桌面环境。它使用 Vala 编写,基于 GTK 3Granite

开发

elementary OS 的发行版本衍生自 Ubuntu 的 LTS 版本,通常比 Ubuntu 的发布周期晚几周或几个月。然而,其组成软件包是持续更新的。请查看官方 GitHub 仓库并咨询其 社区 Slack

安装

软件包来源

官方仓库

Pantheon 桌面环境和 elementary OS 的精选应用程序由 pantheon 组提供。

非官方仓库

extra-alucryd 包含一些尚未包含在 pantheon 组中的软件包

AUR

许多与 Pantheon 相关的软件包(例如为 elementary OS 开发的第三方应用程序和不稳定的开发包)的 PKGBUILD 可在 AUR 中找到。

警告 请勿盲目安装 AUR 软件包。

桌面环境

若要安装最小化的 Pantheon shell,请安装 pantheon-session,它会拉取多个依赖项和核心组件。

服务

这些可选软件包为 Pantheon 和 elementary OS 应用程序提供(后台)服务:

主题与配置

这些可选软件包有助于提升桌面的外观和体验:

注意 其中包含需要单独安装的主题包和字体设置。

应用程序

以下是一些组成可选 elementary OS 软件套件的原创、打补丁或精选软件包:

启动 Pantheon

通过显示管理器

pantheon-session 为诸如 LightDM 等显示管理器提供了一个 gnome-session 条目。

通过显示管理器自动启动应用程序

通过 xinit

使用 xinitrc,通过将 Pantheon shell 组件追加到文件末尾来启动它们,例如:

~/.xinitrc
...
io.elementary.wingpanel &
plank &
exec gala

通过 xinit 自动启动应用程序

配置与故障排除

通过 switchboard 及其需要单独安装的插件来配置 Pantheon。

plank 外,Pantheon 组件将其配置存储在 org.pantheonio.elementarydconf 键中。

常规

缺失 D-Bus 服务

为了准备向 Wayland 过渡,Pantheon 组件和 elementary OS 软件正逐渐将某些功能委托给 gala 窗口管理器。如果您在 Pantheon 组件或 elementary OS 软件中使用其他窗口管理器,可能会看到如下错误:

** (io.elementary.screenshot:10150): ERROR **: 15:17:28.099: ScreenshotBackend.vala:37: Couldn't get dbus proxy: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.Shell.Screenshot was not provided by any .service files

在这种情况下,有几种选择:

  1. 降级到该 dbus 请求实现之前的软件版本。
  2. 使用 gala 窗口管理器。
  3. 自行实现缺失的接口。
  4. 为您所需的功能寻找其他软件(例如,其他截图工具)。

安装软件包时出现“No such key”

由于 pantheon-default-settings 是为旧版 gnome-settings-daemon 编写的,因此它期望的一些 dconf 键缺失。这不是问题,但如果报错信息令人困扰,可以注释掉或从 /usr/share/glib-2.0/schemas/25_pantheon-default-settings.gschema.override 中移除指定的键。

桌面

登录时崩溃

“Oh no! Something has gone wrong.”

Pantheon 会话文件中的某个 RequiredComponents 可能失败了。

可以通过从 /usr/share/gnome-session/sessions/pantheon.session 中移除失败的组件来绕过此问题。

提示 通常罪魁祸首是一个或多个 gnome-settings-daemon 服务。
返回显示管理器

请参阅 gnome-session 在会话启动时崩溃

提示 大多数情况下,稍微多等一会儿再登录足以清除上一会话遗留的阻塞。

多显示器屏幕分辨率错误

lightdm-pantheon-greeter 尝试从 monitors.xml 设置监视器,而不是使用 Xorg 配置,这似乎并不可靠

另一种方法是使用其他登录界面,例如 lightdm-gtk-greeter

触摸板手势

安装 touchegg。但是,此软件包附带的一些手势可能与 Pantheon 的手势冲突。您可以将 /usr/share/touchegg/touchegg.conf 复制到 ~/.local/share/touchegg/ 并删除这些手势设置。有关更多说明,请参考 Touchegg

更改壁纸和文本缩放

安装 switchboard-plug-desktop 并在 switchboard 中进行配置。

文件

Plank

请参阅 Plank

启动时不运行

自 cerbere 停用后,pantheon-session 希望 plank 使用此 xdg 自动启动配置来启动并请求 gnome-session 内置的管理功能来维护它。

注意 应注释掉 X-GNOME-Autostart-Phase=Panel 以避免启动时停滞。

安装 pantheon-dock-gitAUR,或者手动创建 /etc/xdg/autostart/plank.desktop

Terminal

不透明度

将 dconf 键 io.elementary.terminal.settings.background 设置为您所需的 RGBA 格式背景颜色和不透明度,例如默认值:rgba(46, 46, 46, 0.95)

Wingpanel

指示器

Wingpanel 默认不带任何指示器,必须单独安装。

最起码,您可能需要安装:

第三方指示器

通过显示管理器启动时,如果第三方指示器的 XDG Autostart 包含 OnlyShowIn=,请在其中追加 Pantheon;

会话指示器菜单无响应
  • 锁定菜单项需要由 org.gnome.ScreenSaver dbus 服务提供的 Lock dbus 方法。
  • 关机...注销... 菜单项请求的对话框需要 gala 窗口管理器才能显示。如果您打算使用其他窗口管理器,则需要替代方案,例如 wingpanel-indicator-session-gitAUR

动态透明度

gala 窗口管理器为 Wingpanel 提供动态透明度。

使用 gtk-theme-elementary 时,当最大化的窗口占据屏幕时,面板会变为不透明,否则会与壁纸融合;使用其他 GTK 主题可能会导致面板始终不透明。

若要在其他主题中实现此行为,请将以下代码添加到其 CSS 文件或覆盖文件 ~/.config/gtk-3.0/gtk.css 中:

/*********************
 * wingpanel support *
 ********************/

.panel {
    background-color: transparent;
    transition: all 1s ease-in-out;
}

.panel.maximized {
    background-color: #000;
}

© . This site is unofficial and not affiliated with Arch Linux.

Content is available under GNU Free Documentation License 1.3 or later unless otherwise noted.