SX(1) General Commands Manual SX(1)

sx - start an xorg server

sx [command [arguments ...]]

sx can be used to replace both xinit(1) and startx(1) for starting an Xorg(1) server with an initial client. By default sx will attempt to execute XDG_CONFIG_HOME/sx/sxrc unless a command is provided. The command may have additional arguments.

sx will attempt to inherit the exit status from the Xorg(1) server. Otherwise it is 0.

This environment references a file which stores authorisation entries used to secure Xorg(1). If this environment is not set then sx will create and use XDG_DATA_HOME/sx/xauthority instead while also exporting this value to XAUTHORITY.
The directory used when searching for sxrc. HOME/.config will be used if not set.
The directory used for storing the xauthority file. HOME/.local/share will be used if not set.

The default command started by sx. This file must be executable.
The default authority used by sx if an alternative file is not provided with XAUTHORITY.

Since the addition of Xorg.wrap(1) it may be necessary to set allowed_users to anybody in /etc/X11/Xwrapper.config. This is due to sx attempting to run commands from within a subshell and is thusly not considered a console user.

Use an existing .Xinitrc by specifying an appropriate interpreter such as sh(1) or making it executable with a correct interpreter line:

sx sh ~/.Xinitrc

Pass arguments to the standard sxrc by presenting it to sx as a command:

sx ~/.config/sx/sxrc arg1 arg2

startx(1), X(7), xinit(1), Xorg(1), Xsecurity(7), Xwrapper.config(5)

6 October 2020 2.1.6