I'm not sure why it took me this long, but I'm finally investing in server deployment features.

I was looking around for a way to set up an executable as a service in Ubuntu, when it dawned on me that Dungbeetle servers didn't accept any command line arguments, and there was no practical way to store the log, preferences and executable in different places. This is all instrumental when you deploy a server, no matter which OS you're on.

The following is an example on how to set up a service in Ubuntu: http://stackoverflow.com/questions/...

Previously the following applied:

  1. Bug report screenshots were stored in 'Screenshots' next to the executable
  2. The server preferences were stored in 'ServerPreferences.yaml' also next to the executable
  3. If using SQlite, 'DungbeetleDatabase.sqlite' was stored next to the executable
  4. All log messages were sent to stdout

Now it's all based on a new concept called the 'home' folder.

Here are the new defaults:

  1. The home folder is configurable, and defaults to the current working directory
  2. 'Screenshots' is stored in the home folder
  3. 'DungbeetleDatabase.sqlite' is stored in the home folder
  4. 'ServerPreferences.yaml' is configurable, and defaults to being in the home folder
  5. The log can be configured to be a file, but defaults to stdout

This should open up the options for installing the server on a variety of OS'es and distros.