That does sound an awful headache for something that otherwise doesn't seem to be using X for anything other than dependency expectations. It seems like there should be a non-X-dependent way to do it.
On Mon, Sep 22, 2014 at 9:52 AM, Neil Van Dyke <n...@neilvandyke.org> wrote: > Amir Ansari wrote at 09/22/2014 02:28 AM: > >> Have you tried Xvfb (http://en.wikipedia.org/wiki/Xvfb), a virtual X >> server? It runs headlessly, sidesteps the whole issue of having to fork the >> code... >> >> > I have no idea whether "xvfb" is the best way without looking closely at a > particular case, but I've seen "xvfb" work in the past on production > servers. (Not for Racket, but for some R statistics tool that touched the > X server, so that the tool could be used off-the-shelf, rather than > maintaining a modified fork of the tool source.) > > If you do this, just be write your startup and shutdown scripts to be > resilient and stable (e.g., wrt available ports/sockets at the time, and to > shut down cleanly, and so there are no race conditions or conflicts between > multiple simultaneous users), and secure (e.g., ensure that it won't > accidentally listen on a public network interface, and that an attacker > can't synthesize operations to the xvfb to escalate privileges or DoS, and > that the xvfb can't be used to leak data between users). > > Neil V. > > > ____________________ > Racket Users list: > http://lists.racket-lang.org/users >
____________________ Racket Users list: http://lists.racket-lang.org/users