Hi everyone,

Earlier today on #lispgames, David hosted a discussion on how to create a nice standalone installer which would make it easy to develop games in Common Lisp. Here's my answer:

Introducing the Blackthorn Starter Pack, a standalone collection of libraries which can be used to develop with any game engine that uses lispbuilder-* and/or cl-opengl. The installation procedure goes something like:

 * Install your favorite Lisp implementation.
 * Download and extract the Blackthorn Starter Pack for your platform.
 * Load setup.lisp (e.g. for SBCL, run "sbcl --load setup.lisp").
 * And you're ready to go! (Well, not quite. You need a game engine. But you have all the dependencies installed so that should hopefully be easy.)

Caveat: The system was originally written with SBCL in mind, but porting it should be pretty trivial, at least for everything which isn't Lispworks Personal Edition.
Second Caveat: For Unix flavors, you'll need to install SDL yourself, because it's pretty much impossible to provide binaries for every possible Unix, and package managers do a better job of that anyhow.

So that much of the system is working right now. Of course, there are other things which might be nice to have too, including:

 * An easy way to dump binaries on implementations that allow it.
 * An easy way to turn binaries into full-featured installers for Windows and apps/dmg files for Mac OS X.
 * Glue code that will automatically find and load dlls/sos/dylibs before your app starts up so that you don't have to worry about where those files are on the end-user system.

For Blackthorn, I've currently hacked these things into a Makefile which I distribute with my engine. But I think it would be not too difficult to provide this functionality as a part of the Starter Pack rather than keeping it in my engine.

Oh, and finally: licensing. Blackthorn is under the MIT license. Which makes it possible to use for literally anything. (Of course, the libraries are all under their own licenses and I can't change that. But at least the glue code is under the MIT license.)

Thoughts? Anyone interested in using such a system?

--
Elliott Slaughter

"Don't worry about what anybody else is going to do. The best way to predict the future is to invent it." - Alan Kay