Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NSIS Vs WiX Vs AnyOther Installation Package

Need to create a Installation Package that would need to a) install a Database, b) create database and tables, c) installed already created installable in Visual Studio, d) create ODBC datasource, e) copy files. f) create shortcuts, etc

Can you please suggestion which one to use? To simplify following would be my criteria(Descending Order)

  1. Stable
  2. Fullfill all my needs.
  3. Easy to learn

Can you please suggest?

like image 929
Sandeep Jindal Avatar asked Dec 14 '09 20:12

Sandeep Jindal


People also ask

What is WiX Installer used for?

Windows Installer XML Toolset (WiX, pronounced "wicks"), is a free software toolset that builds Windows Installer packages from XML. It consists of a command-line environment that developers may integrate into their build processes to build MSI and MSM packages.

Is WiX Installer free?

Download. You can download the WiX toolset for free.

How do I install a package on WiX?

Open the Package Manager and select Installed Packages. Hover over the package and click the button. If there is an option to select Request Latest Version, the installed version is the latest version or a later version of the package has not been approved yet. Click Request Latest Version to open the request form.

Who uses WiX toolset?

Apple, EMC, IBM, Twitter, and thousands of other companies also depend on WiX. FireGiant co-founder and CEO, Rob Mensching, worked at Microsoft on installation technology for 14 years.


2 Answers

If you want to use WiX, you need at least a basic understanding of how Windows Installer works. The best reference around is The Definitive Guide to Windows Installer, which runs through the all basics with examples using Visual Studio and Orca.

WiX is very easy to learn once you understand Windows Installer.

A properly written Windows Installer package will be more stable and resilient than anything else you can imagine. It'll take a month or so to get your head around it, and you'll get better and learn more about it over time.

On the other hand, NSIS only takes a day to learn - it's just a simple scripting language.

@wcoenen - I'd agree that you definitely will learn more by reading various blogs of those on the WiX team, but I personally find that particular book gives a really solid foundation which makes it easier to understand the concepts they're talking about.

@Sandeep - You need an MSI package for corporate software, if you have no intention of selling your product to customers who need automated deployment in a locked down environment then NSIS will suit you just fine :)

@romkyns InnoSetup is fairly limited in my opinion, you can do just as much with a batch file and a self extracting EXE - it all comes down to your target market, corporate/enterprise clients demand MSI - home users don't care as long as it works and would happily double click on a SETUP.BAT file :)

like image 155
saschabeaumont Avatar answered Sep 23 '22 14:09

saschabeaumont


I would like to suggest another installer which is InnoSetup combined with ISTools

Innosetup has very good scripting language, and has a wizard to make it easy for you do the installation package and ISTools have the GUI interface for most of Innosetup options,

I was able to Install Mysql, its service and creating tables and other things with it, and it's much easier to learn than others.

like image 38
Mohammed Nasman Avatar answered Sep 19 '22 14:09

Mohammed Nasman