PDA

View Full Version : Merge Module, Nested Installs, Setup prerequisits, oh my



Aragorn
11-01-2005, 05:53 PM
All right, so I have a bit of a problem with my installer organization/structure. I have a series of products built on the same underlying codebase. This application layer is very broad and the products built a top it quite distinct.

Creating one massive installer would require a very complicated single installer that practical no one would be able to use the same way. You would always have to do a custom. This approach is potentially very buggy and suboptimal. The user experience is awful the second they try to stray outside a couple of pre-selected norms. The maintenance is hellish.

My thought was to separate out this broad application layer so that its installation was encapsulated and distributed among the N installers for the separate applications. I see a number of solutions, but I'm not sure of the correct one.

I could create a Merge module for the common application layer. This works well, but it seems as though the application layer would have to be on disk N times, where N is the number of calling users. N distinct products at M megs a piece would create an awful lot of wasted disk space if either number grew large, which is the case.

I could nest the setups, but that's often a bad idea, especially when you start to worry about advertisement etc.

I could create a setup prerequisite, but this would have the same problem as the merge module and be slightly uglier to the end user. Unless of course there is some option to redirect the location of this prerequisite on the disk. This should be possible, but I can't see it. If anyone has any thoughts on the matter, please let me know.

Setup prerequiesites would seem like they're almost perfect except that I can't effect their mappings. Nothing like having the .Net framework in 6 different locations on the installation CD because you have 6 COMPLETELY distinct products that you create dependant upon it.

Aragorn
11-02-2005, 06:33 PM
So how can this be done without eating disk? Bump

SGorman
11-03-2005, 09:13 AM
Why do you think that a merge module would get put on disk multiple times? Since the merge module (and any component, for that matter) is *uniquely* identified by GUID, even if the same merge module is present in X different installs the merge module itself should only be installed once, on disk.

That's the way that I understand it anyway.

Aragorn
11-03-2005, 10:17 AM
Why do you think that a merge module would get put on disk multiple times? Since the merge module (and any component, for that matter) is *uniquely* identified by GUID, even if the same merge module is present in X different installs the merge module itself should only be installed once, on disk.

That's the way that I understand it anyway.

On the target machine certainly, at least depending upon how you have things set up. I'm talking about the distribution media. I just think it's kinda foolish to use the disk space N different times to contain the same thing.