Xsettingsd
Xsettingsd is a lightweight xsettings daemon which provides settings to Xorg applications via the XSETTINGS specification.
Some desktop environments (such as KDE by default or a custom one) do not include this. In such environments running an xsettings daemon is necessary for some applications (most notably GTK–, Java– and Wine–based) to use the selected theme, cursor, font, and other settings.
Installation
Install xsettingsd or xsettingsd-gitAUR.
Configuration
xsettingsd(1) contains just brief intro, see README for details.
An example configuration to X FreeType font rendering (you can use your preferred config file path):
~/.config/xsettingsd/xsettingsd.conf
Xft/Antialias 1 Xft/DPI 98304 Xft/Hinting 1 Xft/HintStyle "hintfull" Xft/lcdfilter "lcddefault" Xft/RGBA "rgb"
-
Xft/DPI
is your DPI multiplied by 1024. - Fonts with your real DPI (like 94*1024) might look better than with artificial (like 96*1024) one, but you may encounter glitches (e.g. no borders on pop-up tips) in your application.
- Although X resources and xsettings parameter names may look similar, they all are case-sensitive. E.g. you should put
Xft.dpi: 96
in~/.Xresources
andXft/DPI 98304
in~/.xsettingsd.conf
.
Usage
Start the user unit xsettingsd.service
.
This unit is static, so it cannot be enabled directly. You can autostart it (or xsettingsd
binary) on Xorg, desktop environment or window manager startup.
The unit is configured as PartOf
the graphical-session.target
, so it stops (restarts) when graphical-session.target
is stopped (restarted), see systemd.unit(5) § [UNIT] SECTION OPTIONS and systemd.special(7) § Special Passive User Units.
Troubleshooting
Unable to open connection to X server
Check that DISPLAY
and XAUTHORITY
environment variables are set.
If you are starting the systemd unit, check that systemctl --user import-environment DISPLAY XAUTHORITY
was executed (it can be done by /etc/X11/xinit/xinitrc.d/50-systemd-user.sh
invoked from your ~/.xinitrc
).