Den 18-06-2010 08:05, Colin Charles skrev:
Hi!
On 17 Jun 2010, at 16:20, Bo Thorsen wrote:
There is no support for setting up the database in the installer, or setting up MariaDB as a service. CMake+NSIS is just a dumb file copy system. MySQL works around this by running another executable at the end of the install process and this program does the setup. IMHO, that's a very good solution, and it also allows the user to run the setup program again later. But it's still a workaround due to the limited installer system.
NSIS would be my choice for an installer right now. But because of the limitations, I'd consider this a temporary solution until we have a better one. See my next mail for a better but much more complex system.
I'm for this solution. It seems to be closest to what MySQL offers upstream,
Well, this is something I should have commented on in the first two mails. There are two parts to an installer setup in CPack, configuration and file setup. The configuration is of course going to be different between an NSIS and WiX version, but these are very few lines, and they can be put in a separate file for NSIS. For WiX, the setup is done in the .xsl file, which is probably going to be quite big. The file setup is lines like this: INSTALL(FILES libmysql/libmysql.def DESTINATION include COMPONENT headers) That's of course shared between any installer implementation, and these are the only type of lines spread out over the tree. So, even if choose a different road than MySQL, it's going to be a really small difference.
and the workaround makes it simple
Yes and no. I've been working on this workaround, and it's quite difficult to implement. Plus it means forking the NSIS implementation in CMake to a local version :( It's possible I can do this workaround in a generic way (this is what I intend) and get this patch into CMake, which would help a lot for us.
and it would mean we can get an installer much quicker, thus helping those that use the Microsoft platform as an OS of choice
To me, this is the winning argument for now. We need a usable solution *right now*, not a great solution in some months. Unless someone objects loudly, I'll continue with the NSIS implementation, and take another look at WiX sometime later. Bo Thorsen. Monty Program AB. -- MariaDB: MySQL replacement Community developed. Feature enhanced. Backward compatible.