Re: X & tcp listening
On Mon, May 28, 2001 at 01:46:07PM +0200, Tomasz Olszewski wrote:
> If an user
> creates his own $HOME/.xserverrc, it overrides the system wide
So make /usr/bin/X11/X a wrapper for the "real" X.
Problem with this is, if you upgrade or re-install the package
containing it, it will get replaced by the package's copy and you
will have to do this again.
> Besides, xinit looks only for user's private rc and doesn't
> care if there is a global one.
You mentioned you are using startx. man startx:
To determine the
server to run, startx first looks for a file called
.xserverrc in the user's home directory. If that is not
found, it uses the file xserverrc in the xinit library
directory. If command line server options are given, they
override this behavior. Users rarely need to provide a
.xserverrc file. See the xinit(1) manual page for more
details on the arguments.
Granted, you would have an issue (as you indicated) if a user creates
his own .xserverrc. So there are a number of ways around that, such as
pre-creating them and making them immutable, or doing the wrapper script
around /usr/bin/X11/X as mentioned above, etc..
There's probably a few other ways you could do this also, such as
aliasing startx in /etc/profile and making a script to determine the
next available display number, blablabla.
Or you could pre-create the $HOME/.xserverrc files and put the -nolisten
tcp argument in them, along with a note to the user to not remove that
if he uses X, etc..