Xsettingsd

出自 ArchWiki

Xsettingsd 是一个轻量级的 xsettings 守护进程,它通过 Xorg 应用程序通过 XSETTINGS 规范提供设置。

一些桌面环境(例如默认的 Plasma,或自定义环境)不包含此功能。在这样的环境中,运行 xsettings 守护进程对于某些应用程序(最显著的是基于 GTKJavaWine 的应用程序)使用所选主题、光标、字体和其他设置是必要的。

安装

安装 xsettingsdxsettingsd-gitAUR

配置

xsettingsd(1) 仅包含简要介绍,详情请参阅 README

一个关于 X FreeType 字体渲染的配置示例(您可以使用您偏好的 配置文件路径

~/.config/xsettingsd/xsettingsd.conf
Xft/Antialias   1
Xft/DPI         98304
Xft/Hinting     1
Xft/HintStyle   "hintfull"
Xft/lcdfilter   "lcddefault"
Xft/RGBA        "rgb"
注意
  • Xft/DPI 是您的 DPI 乘以 1024
  • 使用您的真实 DPI(如 94*1024)的字体可能比人工 DPI(如 96*1024)的字体看起来更好,但您可能会在应用程序中遇到故障(例如,弹出提示没有边框)。
  • 尽管 X 资源xsettings 参数名称可能看起来相似,但它们都是大小写敏感的。例如,您应该在 ~/.Xresources 中放置 Xft.dpi: 96,在 ~/.xsettingsd.conf 中放置 Xft/DPI 98304

用法

启动 用户单元 xsettingsd.service

此单元是静态的,因此无法直接启用。您可以在 Xorg桌面环境窗口管理器启动时自动启动它(或 xsettingsd 二进制文件)。

注意: 安装了 KDEkde-gtk-config 将会自动启动二进制文件

此单元配置为 graphical-session.targetPartOf,因此当 graphical-session.target 停止(重启)时,它也会停止(重启),请参阅 systemd.unit(5) § [UNIT] SECTION OPTIONSsystemd.special(7) § Special Passive User Units

故障排除

无法打开到 X 服务器的连接

检查是否已设置 DISPLAYXAUTHORITY 环境变量。

如果您正在启动 systemd 单元,请检查是否已执行 systemctl --user import-environment DISPLAY XAUTHORITY(可以通过从您的 ~/.xinitrc 调用的 /etc/X11/xinit/xinitrc.d/50-systemd-user.sh 完成)。