Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Junethack inter-server nethack tournament
CSS Ruby JavaScript
branch: master
Failed to load latest commit information.
docs Rewrote and restyled rules to be more legible.
icons DNetHack specific trophies
lib limit conducts count to vanilla conducts for variants that extend it …
public correct dates on /activity graphs
spec limit conducts count to vanilla conducts for variants that extend it …
views refactor trophy image into their own partial
webmocks Rearranged folders in webmocks.
.gitignore Write PID to file and delete it on exit
.ruby-version Update to ruby-1.9.3-p545.
Gemfile add pry
Gemfile.lock add pry fix the home error in the right way
README.mobile_branch first attempt for a mobile layout
Rakefile post-mortem statistics rake task: db:statistics Instructions for archiving the tournament site
gpl.txt Add licenses, authors, license, gpl.txt

Junethack is a server for holding tournaments for the roguelike game NetHack and its forks.

This server collects data from several external public servers and show achievements and trophies for the participating players.


Needed pre-installed software

  • ruby 1.9.3
  • curl
  • sqlite3


Clone the repository:

git clone junethack

Install the Ruby interpreter. Example using RVM:

\curl -#L | bash -s stable
source ~/.rvm/scripts/rvm
rvm install `cat junethack/.ruby-version`

Install all required rubygems:

cd junethack
bundle install

Start the server


Archival of a finished tournament

Use httrack to make a static copy of the website:

# httrack -O /tmp/junethack_mirror '-*' -%v --max-rate=1000000

# mv /tmp/junethack_mirror/ public/archive/2013

Edit the archive links to the previous Junethack tournaments in public/archive/2013/index.html. Also add a link to the the new Junethack archive in views/splash.haml.

Add and commit the the repository.

TODO: more documentation, distinction prod/dev env, maintenance mode, manually fetching games, dummy users

Something went wrong with that request. Please try again.