Running Pennmush in Cygwin

Submitted by squirrel on Fri, 2010-07-23 23:27

After spending many minutes trying to figure out how to get pennmush running on Cygwin, and many many more minutes asking the good folks of +hardcode @M*U*S*H, I have succeeded in making it run, connecting to it, and creating a batch file that can be placed in the windows startup folder or otherwise utilized to make it start without actually having to open a cygwin window.

Here's how:
This assumes you've installed cygwin to C:\cygwin. If not, replace path information as necessary.

Step 1) Install cygwin. Make sure to include all of the packages suggested on http://code.google.com/p/pennmush/wiki/InstallingUnix. I also suggest installing nano, a much easier editor to use than the included vim.

Step 2) Download the linux version of pennmush from http://code.google.com/p/pennmush and untar it to your desired location. I recommend copying the download URL off of that page from a windows browser and then using wget to download it directly into cygwin. If you don't want to do that, you can save the file to C:\cygwin\home\username\ too.

Step 3) Run the pennmush/configure script with the '--disable-ipv6' argument. For some reason if you don't, the mush ONLY listens on ipv6, and you can't connect via ipv4. Anyone who knows better, feel free to comment and tell me how to fix this. Other than that it's fine to accept all the defaults.

Step 4) Run make update, make, and make install.

Step 5) Create a batch file. I called mine cygwin-windows-startup-folder.bat and stuck it in C:\cygwin\home\squirrel\pennmush\game just because it seems to go nicely. Put the following into that batch file:

@echo off
#This adds the cygin binaries directory to PATH for the duration of this
#script. This allows the startup script to run.
path=%PATH%;c:\cygwin\bin

#This command will actually run the server
start /B c:\cygwin\bin\run bash -c /home/David/pennmush/game/restart

Step 6) Start the mush. You can do this in a couple of ways:
A) Open a cygwin window, cd to pennmush/game, and type ./restart
B) Double click the batch file

If you want the server to start when you log into windows, you can put a shortcut to that batch file in your Startup folder in the start menu. The batch file WILL flash a cmd window for a moment when it runs.