Non root Xorg

This page describes how user can run Xorg as unprivileged user without using suid.

The logind provider
Currently there are two logind providers in Gentoo, systemd and elogind. Users of systemd profile and users of desktop profiles (both systemd and non-systemd one) will already have logind interface provided, users of OpenRC with default profile will be required to globally enable elogind USE flag and update system with. It is also required to re-login after elogind has been enabled, to activate it. If either systemd or elogind USE flag is enabled on x11-base/xorg-server together with suid USE flag, instead of installing with suid enabled, x11-base/xorg-server will be installed with suid-wrapper, that will only preserve suid if the graphics driver that is in use really require root.'

The elogind users are recommended to add elogind into boot runlevel. While it is not strictly necessary, since elogind can be started upon receiving event over dbus, it will clash with other services that depends on elogind, like fwupd resulting in OpenRC trying to start already started elogind and in result failing to do so.

dbus service running
It is required to have dbus started so that pam_elogind can start or attach to already started elogind daemon.

Cannot start Xorg as regular user
Majority of problems with running Xorg without root after switching to elogind cames down to issues with PAM. One can confirm that elogind is working by running. If it does not work, then one should check:


 * Has the configuration files in /etc being updated after updating system with new USE flags?
 * Is there any trace of pam_elogind.so in ?\
 * Is the dbus service running?