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. If sx was signalled then the exit status will reflect this, otherwise it will be zero.

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.

With the addition of Xorg.wrap(1) it may be necessary to set allowed_users to anybody in /etc/X11/Xwrapper.config if sx is used in a pipeline or its standard output and standard error is redirected to a file as it will not be 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

https://github.com/Earnestly/sx

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

6 July 2021 2.1.7