maria-developers team mailing list archive
Mailing list archive
Windows installer, WiX version
The other contender for installer system of MariaDB 2010, is CPack +
WiX. This is a much more powerful solution, but also one that will take
a lot longer to implement.
CPack doesn't actually support WiX yet, but there is a patch out there
to implement the support. This patch is so simple, I don't understand
why they didn't just add it already. All it does is copy the built files
into a directory structure, and call the WiX binaries. It doesn't output
a specification file for the installer, like the CPack NSIS integration
Instead, the implementor has to supply a .xsl file which the WiX
binaries takes as input for creating a .xml file, which another WiX
binary uses to build the package.
The actual package is a single .msi file which runs like any other
graphical Windows installer.
Without CPack, the implementor writes the .xml file by hand. The CPack
integration makes it simpler to identify the files that will be
installed. If the implementor writes the .xml file manually, we have to
always keep the cmake built files and the WiX spec in sync. So even
though the CPack integration is really small, it does make sense.
WiX is capable of very powerful installers that would work exactly like
I'd hope to achieve. This means seamless upgrading, user account
creation (for setting MariaDB up as a service), service installation
etc. These are all things that NSIS just can't do directly, where we'd
be trying to bend the system to support what we want.
The downside of using WiX is that it's going to take a lot longer to
implement a good installer than it is to implement a simple installer
with NSIS. I already have a patch for a complete installer with NSIS,
albeit one that doesn't ask about deleting database files or with the
ability to set up as a service. Making it to this point with WiX is not
I'm convinced that once the WiX installer is done, it's going to be easy
to maintain it. Probably as easy as maintaining the NSIS system. And
implementing features in the installer will be a lot simpler with WiX,
because the system is designed to be powerful.
I would like to hear some discussion about this. Should I start spending
the longer time on this, or go with the simple NSIS solution for now?
Monty Program AB.
MariaDB: MySQL replacement
Community developed. Feature enhanced. Backward compatible.