mirror of sx + changes
Go to file
Earnestly 95f648452f README: mention the Xorg.wrap bypass
Xorg.wrap default system of autodetection of root rights requirement is
wrong in every case I've seen it used.  The result is the Xorg server
runs as the root user when it is not necessary.

The main autodetection failure case is when the proprietary nvidia
drivers are used, incorrectly assuming Xorg needs to be run as root.
2017-12-01 21:15:06 +00:00
LICENSE introduce sx 2017-12-01 20:14:54 +00:00
Makefile introduce sx 2017-12-01 20:14:54 +00:00
README README: mention the Xorg.wrap bypass 2017-12-01 21:15:06 +00:00
sx sx: unconditionally run xauth remove in cleanup 2017-12-01 20:59:00 +00:00
sx.1 introduce sx 2017-12-01 20:14:54 +00:00

README

sx <https://github.com/Earnestly/sx>

INTRODUCTION

  sx is a simple alternative to both xinit(1) and startx(1).

  It started life as a proof of concept while attempting to learn how both
  xinit(1) and startx(1) worked.

  It is not a direct replacement however as it provides a different, more
  limited, interface.

  Some of these differences are as follows:

    * The Xorg server's command-line is hard coded and not exposed to the
      user.

    * The first DISPLAY is 1 instead of 0 contrary to what X(7) suggests.

    * xauth entries are overwritten if the displayname is identical.

    * Corresponding xauth entries are unconditionally removed when the Xorg
      server is terminated.

    * The Xorg server uses the -noreset flag.

    * /usr/lib/xorg-server/Xorg is used directly, bypassing Xorg.wrap.

    * The Xorg server logs are written to $XDG_DATA_HOME/sx/$DISPLAY instead
      of Xorg.$DISPLAY.log

    * While XAUTHORITY is still honoured, $XDG_CONFIG_HOME/sx/xauthfile is
      used instead of $HOME/.Xauthority

    * Very little proxy error checking is used preferring instead to let each
      tool speak for itself.

    * None of the typical /etc/X11/xinit infrastructure is directly used.

    * Neither XINITRC is honoured nor .xinitrc used.

    * The XDG_CONFIG_HOME/sx/sxrc file is used instead of .xinitrc and is
      required to be executable.

  For a rational on why this exists, the author invites the reader to look
  over the source code for both xinit(1) and startx(1).

REQUIRES

  Notable requirements are for GNU timeout and GNU tail which is used for the
  --pid option.  Beyond these the usual set of POSIX command-line tools along
  with Xorg and xauth are required.

BUILD

  As there's nothing to build, simply install using a prefered PREFIX.

    make DESTDIR=staged PREFIX=/usr install