topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Thursday March 28, 2024, 12:53 pm
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Last post Author Topic: Choosing an Installer  (Read 12078 times)

Renegade

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13,288
  • Tell me something you don't know...
    • View Profile
    • Renegade Minds
    • Donate to Member
Choosing an Installer
« on: January 28, 2011, 02:13 AM »
And again looking to hear about YOUR experiences...

I'm trying out different installers to see if I can come up with a replacement for the normal Visual Studio installer. 

Just tried InstallShield...

ARGH~!

I want to stab myself in the eyes and scrub myself with a wire brush in an acid shower...

Did I mention that I found InstallShield to be, ummm, not fun?

Also trying out InnoSetup. Liking that so far.

I need to check for the .NET 4.0 framework, so that's a must.

But, if anyone has anything to chime in with about any installer software, please do.





Slow Down Music - Where I commit thought crimes...

Freedom is the right to be wrong, not the right to do wrong. - John Diefenbaker

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,896
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Choosing an Installer
« Reply #1 on: January 28, 2011, 02:15 AM »
InnoSetup is what I use.. it's not perfect, but it has a pretty good combination of power-when-you-need it, and dead simple use when you don't.
The mini-ide that comes recommended with it in the full downloads are good.

I need to check for the .NET 4.0 framework, so that's a must.


Inno Setup does not have built in support for checking .net stuff, which is quite unfortunate.  But their have been threads on the forum about adding this to inno script, AND about other installers that DO explicitly support .net version checking.

Renegade

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13,288
  • Tell me something you don't know...
    • View Profile
    • Renegade Minds
    • Donate to Member
Re: Choosing an Installer
« Reply #2 on: January 28, 2011, 02:23 AM »
This:

http://www.kynosarge...e/DotNetVersion.html

Or this:

http://www.codeproje...nnosetup_instal.aspx

Should work, but I'm not going to bother until I hear a bit from people.

Slow Down Music - Where I commit thought crimes...

Freedom is the right to be wrong, not the right to do wrong. - John Diefenbaker

Eóin

  • Charter Member
  • Joined in 2006
  • ***
  • Posts: 1,401
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #3 on: January 28, 2011, 03:42 AM »
Well I always recommend WiX. It's a bit tough but there are things like WiXEdit to make life easier. And it has handy How To guides for most tasks.

Renegade

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13,288
  • Tell me something you don't know...
    • View Profile
    • Renegade Minds
    • Donate to Member
Re: Choosing an Installer
« Reply #4 on: January 28, 2011, 04:42 AM »
Well I always recommend WiX. It's a bit tough but there are things like WiXEdit to make life easier. And it has handy How To guides for most tasks.

If it's tough, why would you use it?
Slow Down Music - Where I commit thought crimes...

Freedom is the right to be wrong, not the right to do wrong. - John Diefenbaker

Eóin

  • Charter Member
  • Joined in 2006
  • ***
  • Posts: 1,401
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #5 on: January 28, 2011, 05:08 AM »
I like the end result, I like MSI files for installers, feels more native or something.

Also it's not tear your hair out tough, mostly it's just copying and pasting snippets and the end result feels elegant.

So I guess I use it because it gives me a nice feeling :)

Renegade

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13,288
  • Tell me something you don't know...
    • View Profile
    • Renegade Minds
    • Donate to Member
Re: Choosing an Installer
« Reply #6 on: January 28, 2011, 05:28 AM »
That's as good a reason as any.

I was playing with InnoSetup, and decided that I like the background there -- it takes up the whole screen, and forces your dedicated attention instead of having just another window on top of the desktop. Again, that feeling sort of thing. (Context: the super simple Photo Resizer for non-techno savvy users.)
Slow Down Music - Where I commit thought crimes...

Freedom is the right to be wrong, not the right to do wrong. - John Diefenbaker

Jibz

  • Developer
  • Joined in 2005
  • ***
  • Posts: 1,187
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #7 on: January 28, 2011, 05:59 AM »
NSIS is still around aswell

http://nsis.sourceforge.net/

Renegade

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13,288
  • Tell me something you don't know...
    • View Profile
    • Renegade Minds
    • Donate to Member
Re: Choosing an Installer
« Reply #8 on: January 28, 2011, 06:01 AM »
I had a brief look at it, but it looked like too much typing. :D I like nice pretty GUIs that make my life easier.

Have you given NSIS a spin?
Slow Down Music - Where I commit thought crimes...

Freedom is the right to be wrong, not the right to do wrong. - John Diefenbaker

kyrathaba

  • N.A.N.Y. Organizer
  • Honorary Member
  • Joined in 2006
  • **
  • Posts: 3,200
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #9 on: January 28, 2011, 07:23 AM »
Here's the Inno Setup script I used to install a recent program I wrote.  It checks for (and, if necessary, downloads and installs) .NET 4.0.  Just change my program-specific stuff to match the program you want to install:

Ath

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 3,612
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #10 on: January 28, 2011, 07:29 AM »
When creating the installer for JottiQ together with worstje, I published the Inno Setup script-base on my blog
It's a bit more modular then the template by kyrathaba, but also a bit more complex maybe... If you need any support, just ping ;)


timns

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 1,211
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #11 on: January 28, 2011, 09:21 AM »
We deleted InstallShield recently. Shredded the disks, and burned effigies of the developers.

We settled on Tarma: http://www.tarma.com/ and so far have been extremely happy. Their support is very responsive too.

worstje

  • Honorary Member
  • Joined in 2009
  • **
  • Posts: 588
  • The Gent with the White Hat
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #12 on: January 28, 2011, 09:37 AM »
Tarma does look like a really sweet product. While Inno does everything I expect from it it also has an issue or two that Ath spent time working around for JottiQ (read: JottiQ has weird requirements), so I am actually pretty curious how well Tarma would deal with that. :)

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,896
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: Choosing an Installer
« Reply #13 on: January 28, 2011, 05:13 PM »
When i went searching for installers many years ago, one of my requirements was the ability to make an installer that built setup executables that did not have to bundle in with the files to install.

I use this in my applications to make my installer packages zip-compatible, by NOT having INNO setup package the files, and just make a standalone installer that i then create a self-extracting zip from.

Just something to keep in mind.  Wise used to make an installer that would do this automatically which was really nice.  Both INNO and NIS can create standalone installer exes.  There are a couple more commercial setup makers that also make zip-compatible installer packages, which i really like.

superboyac

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,347
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #14 on: January 28, 2011, 05:45 PM »
When i went searching for installers many years ago, one of my requirements was the ability to make an installer that built setup executables that did not have to bundle in with the files to install.

I use this in my applications to make my installer packages zip-compatible, by NOT having INNO setup package the files, and just make a standalone installer that i then create a self-extracting zip from.

Just something to keep in mind.  Wise used to make an installer that would do this automatically which was really nice.  Both INNO and NIS can create standalone installer exes.  There are a couple more commercial setup makers that also make zip-compatible installer packages, which i really like.
As an end user, I truly appreciate this approach.

superboyac

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,347
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #15 on: January 28, 2011, 05:51 PM »
I'm sure this is not helpful, but I just have to mention it:
I also love the installer that is used for all the "Just Great Software" products (Editpad, Acetext, Powergrep).  I'm pretty sure that he has written the installer custom from scratch, but it's really quite nice.  He covers all bases: one-click installation, advanced options installation, portable installation, you can review EVERY SINGLE FILE that is going to be installed beforehand.  Really quite excellent, as is everything from this dude.

wilsonch

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 10
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #16 on: January 28, 2011, 06:11 PM »
It seems that "DeployMaster" from that developer is the installer you are praising.

Eóin

  • Charter Member
  • Joined in 2006
  • ***
  • Posts: 1,401
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #17 on: January 28, 2011, 11:51 PM »
As an end user I always feel most comfortable with an MSI installer.

Microsoft encourages third parties to use Windows Installer as the basis for installation frameworks, so that they synchronize correctly with other installers and keep the internal database of installed products consistent. Important features such as rollback and versioning depend on a consistent internal database for reliable operation.

Offering a separate portable package is a great idea too, but for the installer itself I always believe you are doing the users the best service by using MSI based tools.

worstje

  • Honorary Member
  • Joined in 2009
  • **
  • Posts: 588
  • The Gent with the White Hat
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #18 on: January 29, 2011, 12:06 AM »
MSI is a fucking disaster. It's nice for the end-user, but it is HELL to set up once you venture out of the simple-ordinary-application world..

Ok, so maybe it is not so bad for really ordinary apps, but once you have some specific stuff for 32-bit and 64-bit, you need to start nesting msi's, conditionally starting other ones and all that, and it is far too much trouble to figure out. Since both my NANY apps have architecture-sensitive components, MSI is too much trouble to be worth it for me.

Big companies can afford to spend a few days on learning the architecture and getting it set up a little. And while I probably can afford the time, it is not worth my time as there are other features to implement in both my app and the installer. Ask Ath for details on some of the stuff I wanted for JottiQ's installer. :)

SKA

  • Charter Member
  • Joined in 2006
  • ***
  • default avatar
  • Posts: 229
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #19 on: January 29, 2011, 04:03 AM »
Expensive but perhaps worth it - trial versions available:

SetupBuilder Pro (USD 169)
http://www.lindersof...setupbuilder_pro.htm

SetupBuilder Developer (USD 299)
http://www.lindersof...setupbuilder_dev.htm

SKA

JavaJones

  • Review 2.0 Designer
  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 2,739
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #20 on: January 29, 2011, 03:12 PM »
What exactly is the benefit/value of MSI-based install systems? I've never heard any compelling arguments. In my experience the best behaved apps/installers on my system are everything *but* MSI (save for super complex custom installers for things like printer software suites, which are awful).

- Oshyan

Eóin

  • Charter Member
  • Joined in 2006
  • ***
  • Posts: 1,401
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #21 on: January 29, 2011, 03:54 PM »
Well I don't have the technical details, maybe someone here might. But I just personally see MSI's as the most integrated approach.

For example start 'Programs and Features' and notice that a number of entries don't have version numbers. Those are programs which aren't registered correctly with Windows. Start right-clicking and you'll notice that only a few offer the Repair or Change options. Again those are programs which aren't integrating themselves properly with the software database.

There are a number of safety features in Windows Installer and thing like that which give great peace of mind. The repair feature is one, rollback is another. Of course other installers could offer these features too.

I note on this Windows Installer FAQ that a list of advantages is presented. From and end user point of view, these two really strike a cord-

14. State management is maintained. In the past, it’s been difficult to know whether an application is installed on a machine. You would have to query for a .DLL with a specific version number or determine whether an .EXE file with a specific name was present. Windows Installer provides an application programming interface (API) that lets programmers and administrators see whether a specific application is installed on a machine.

15. Scriptable API. This whips together a VBScript to help us with the MSI file manipulations. The API to manipulate MSI files is so powerful that it can create, validate and update packages, trigger installs and uninstalls, examine the MSI repository data on computers, and perform some custom actions.

These sorts of things are impossible when every program on your system is using a custom installer. However, when the majority of applications on your PC are MSI based then all of a sudden doors are opened to advanced methods of managing software automatically. I guess it's a case of standardization, ultimately it tends to be a good thing.
« Last Edit: January 29, 2011, 03:56 PM by Eóin »

JavaJones

  • Review 2.0 Designer
  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 2,739
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #22 on: January 29, 2011, 04:05 PM »
Thanks for those details. From an end user perspective, and having seen the actual in-the-field result of MSI vs. non-MSI installers, I just don't see those things mentioned as being unique to MSI or necessarily valuable. I'm also not clear that point 15 you quoted there is actually referring to mass management of apps. If so, what software takes advantage of that? And what is it good for? Certainly I can't just click one button in Windows and have all my MSI-based software check for updates. If *that* was one advantage it brought I'd be all for it! That being said, if MSI installers *were* the only way to have such a feature, I would expect antitrust issues. I do know that non-MSI software is the most easily updated on my system - Google's apps, for example (for better or worse with their auto-update policies).

- Oshyan

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: Choosing an Installer
« Reply #23 on: January 30, 2011, 09:38 AM »
The features Eóin lists are nice and all, but .msi installers always seem so godawful slow compared to solutions - and how do you easily get files out of a .msi package without running the installer?
- carpe noctem

Ath

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 3,612
    • View Profile
    • Donate to Member
Re: Choosing an Installer
« Reply #24 on: January 30, 2011, 09:51 AM »
The features Eóin lists are nice and all, but .msi installers always seem so godawful slow compared to solutions
IMHO that's some kind of a feature, it scares ppl away from MSI... :D

and how do you easily get files out of a .msi package without running the installer?

There's always Orca, a tool by Microsoft to edit an MSI, instructions for installation and use are here