KiCad / kicad-winbuilder

Windows builder for the KiCad project based on the MSYS2 MinGW system [moved to https://gitlab.com/kicad]
51 stars 24 forks source link

MUI2 migration #24

Closed bevanweiss closed 8 years ago

bevanweiss commented 8 years ago

Finally got the last bit of the MUI2 stuff sorted out. It doesn't do the resizing of the finish checkbox very nicely however, so it took a bit more 'code' than I'd have liked. But it appears to be the way to do this.

nickoe commented 8 years ago

Hi. This needs a slight rebase now. But could you please summarize why MUI2 is better than MUI, or what the difference is`?

bevanweiss commented 8 years ago

The only difference that I can really see code-wise is that MUI2 gets rid of the ini file stuff, and relies more on the nsdialogs. Moving forward in nsis, it will be the only platform receiving active development, plain MUI will only receive major bug fixes. MUI2 is also touted as being significantly 'faster', but I didn't really notice much difference with this particular installer. Maybe the initial extraction is a tiny bit faster, but compared to all the file copies it's pretty insignificant.

I believe that migrating the whole installer base to WiX would perhaps be the better choice, but that is quite a bit of work. WiX would generate an msi, rather than a custom exe. Msi installers play nicer with the rest of the Microsoft ecosystem (automated deployment, version management etc).

Was WiX considered originally? Any particular reasons for it not being utilised?

nickoe commented 8 years ago

I don't really know what WiX is, I thought it was a wierd ass hosted website generator, but I doubt WiX runs on linux, as nsis does. Which made testing and such much much easier for me.

nickoe commented 8 years ago

I have now rebased these patches and merged them. Thanks.

nickoe commented 8 years ago

@bevanweiss I was thinking about making the component selection to a MUI_COMPONENTSPAGE_SMALLDESC such that the tree view is wider. But then the description field is too small for the information that I would like in the description. If you are bored and would like to fix that please feel free to submit a pull request. :)