[racket] Handin server on remote Linux server

From: Eli Barzilay (eli at barzilay.org)
Date: Mon Jan 23 17:21:22 EST 2012

On Tuesday, Jordan Johnson wrote:
> Hi all,
> Is it possible to run the racket handin-server from a remote Linux
> shell, without setting up an X forwarding session?  When I attempt
> to start it using "gracket-text -l handin-server" as specified in
> the docs, I get an error about not having a display available; the
> error appears to stem from the dependency on racket/gui/base.  (My
> plan was to run it on a server that the students can access from
> home whenever, something my workstation & network at school won't
> allow.)

That's something that should work, but unfortunately there's a problem
where gtk is used in a way that requires a display.  See more details
in PR 12465:


For now, the most convenient solution is -- still -- to run a vnc
session and run the server in it.  This way you get a display and you
can connect to the session from anywhere when you need to deal with
potential problems.

> Or perhaps am I fundamentally misunderstanding the way the handin
> server is supposed to work?  (My mental model is: students submit
> files to server, instructor downloads a copy of the directory, and
> runs/checks the submissions locally.)

Submissions get stored as files on the server, when you close a
homework by moving its entry from the active list to the inactive one,
you can do whatever you want with those files.  (I commit them into a
repository that my graded has access to, and he grades it directly
from there.)

> By the way, this reminded me: is there a straightforward way to
> collect the test cases from a submission, and run them on code that
> I've written?

If you know the tests beforehand, you can make them part of the
checker.  If you want to test them afterwards, you need to use the
sandbox for it.  I have a quick script for that, in case you're

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!

Posted on the users mailing list.