views:

192

answers:

6

Hello, stackoverflowers:

I am considering helping an open-source gaming project with creating their setup file. The game is currently weights around 300 MB and is packaged in a zip file, playable straight after it's unarchived. The zip file contains separate executables for Windows, Mac, and Linux as well as compressed data files that are used on all 3 platforms.

My goal is to create a lightweight and possibly portable installation package that could encapsulate the data and provide users with quick install/uninstall procedure. In addition, the sought-after (but not required) properties of the tool that I would use include an opensource license (preferably GPLv2) and its own maturity.

So, the question boils down to:

  • What is a good install creation tool for Windows? (creating .exe, .msi)
  • What is a good install creation tool for OS X? (creating .dmg, ...)
  • What is a good install creation tool for Linux? (creating .rpm, .deb, .bin, ...)

Please post your advice on what tools to use, and any experiences you've had accomplishing such tasks! Thanks in advance.

P.S. The game I'm working with is OpenArena, if anyone's interested.

+1  A: 

For OSX, this looks nice for making DMG's:

http://www.araelium.com/dmgcanvas/

Catch is that it costs $15 or so.

Chris
+4  A: 

For Windows, I've always used the Nullsoft Installer (http://nsis.sourceforge.net/Main_Page). I created my first setup.exe within about 5 minutes using one of the templates they have, and from there, it was quite easy to add installation types, extra pages (license, etc), and other "features".

Mikeage
NSIS is extremely flexible yet it is very simple for the common case. Often times you get flexibility at the price of complexity, and vice versa. I love NSIS. I spent a years fighting with MSI based installer for a very large product, and eventually switched to NSIS and don't regret it.
AaronLS
+3  A: 

For Windows use InnoSetup (in conjunction with Inno Setup Form Designer, that will make Form creation easier)

Ram
+1  A: 

Not in the light category... but may help you chose between the light ones .. InstallShield Multiplatform (or its more recent cousins) will give you the benefit of an entire language (Java) to configure and deploy your applicaiton

Benefits

  • One Install Code Base
  • Feature Rich
  • Good Headless Builds

Drawbacks

  • Cost (3 years ago about $800)
  • Learning Curve
  • Final Package Must Include JRE (150+ MB)

I haven't tried some of the above suggestions but after struggling with arcane install issues for many years this one finally let me forget I had an installer... Which is the most important feature by far.

ojblass
+1  A: 

BitRock InstallBuilder is a multiplatform installation tool that supports all your requirements and is already used by multiple gaming/3D companies like GarageGames, Newtek or DAZ3D. We are not open source but we provide free licenses to projects like yours, just drop us an email support/at/bitrock.com

Daniel Lopez
+1  A: 

On Linux, YoFrankie has been using Zero Install. That's LGPL and also supports checking for updates.

You can either let users install over the web, or run 0export to create a self-extracting archive. 300 MB is quite big... would it be useful to split it into several packages (so that e.g. updates to the core engine don't require users to re-download all the level data)? Zero Install can handle dependencies like that.

Some other options can be found in the Management & Distribution section on gnomefiles.

Thomas Leonard

related questions