Commit Graph

14 Commits

Author SHA1 Message Date
Earnestly f783766e2c sx: drop dependency on openssl
Turns out openssl rand would obnoxiously create a HOME/.rnd dotfile
unless told otherwise with the RANDFILE environment.  Unfortunately
this neither options are compelling and neither can openssl rand be
told to not write this file.

Instead I'm going to use /dev/urandom which appears to be available
on practically every UNIX.

This commit also tidies up the timeout kill logic to better express
what I am doing.
2017-12-07 13:06:46 +00:00
Earnestly ef5ed45959 sx: mention openssl requirement 2017-12-07 12:08:19 +00:00
Earnestly 718add311c doc: clarify purpose and bump the manual date 2017-12-07 12:03:43 +00:00
Earnestly 30457a3139 sx: drop dependencies on coreutils and util-linux
Upon review of GNU tail I discovered that the implemention of --pid was
the same method as polling kill -0 on a sleep interval, which defaults
to 1 second unless -s is used.

This is perhaps expected due to the lack of a pwait(2) system call, I
decided to implement the same mechanic myself and drop both the
requirement on GNU tail and GNU timeout at the same time.

This commit also replaces mcookie from util-linux with openssl rand
which is used to generate a random MD5 checksum for use in the
MIT-MAGIC-COOKIE-1 value.
2017-12-07 11:58:40 +00:00
Earnestly 39702615b7 sx: fgconsole is no longer needed 2017-12-05 10:04:27 +00:00
Earnestly 64038adef2 sx: create XAUTHORITY directory components
We need to do this in sx as neither xauth(1) or touch(1) will create the
path.  Requiring the user to do this would lead to additional code on
their side to account for a detail that sx already controls.  There
is no obvious benefit for omitting this functionality.
2017-12-04 11:58:32 +00:00
Earnestly 60762a5487 doc: clarify how XAUTHORITY is used 2017-12-04 11:58:00 +00:00
Earnestly f25cbb415d sx: test has clearer syntax when AND or OR is used 2017-12-04 11:56:45 +00:00
Earnestly a5fc2e3907 sx: combine export and assignment 2017-12-02 11:40:28 +00:00
Earnestly e08bc130c0 sx: use the default logfile
There's not a lot of point in absorbing the xserver's log file when it
will just be less intuitive for those looking for it in the standard
location.  Since the log is generated by Xorg and not sx, it only seems
reasonable.

This commit also renames xauthfile to xauthority for a little more
consistency with documentation and prior art.
2017-12-02 02:22:29 +00:00
Earnestly 29e20b2e41 sx: remove unused code 2017-12-02 02:17:10 +00:00
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
Earnestly 6b089b8d50 sx: unconditionally run xauth remove in cleanup
Even if xauth(1) fails before we get a $pid for cleanup, make sure to
run xauth remove during cleanup.
2017-12-01 20:59:00 +00:00
Earnestly 161b8be6f5 introduce sx 2017-12-01 20:14:54 +00:00