FYI, WiX has been handed over to the .NET Foundation (of which we are a member, of course): http://www.dotnetfoundation.org/blog/wix-toolset-welcome
On Tue, May 17, 2016 at 8:20 AM, Alex Kashchenko <[email protected]> wrote: > Hi devtools developers, > > I've been working on a MSI installer for OpenJDK (recently posted details > about OpenJDK on windows to internal devtools list). For that installer I > created a WixGen utility (github project link [1]) that generates .wxs XML > descriptors for WiX. > > WiX is an open-source project from Outercurve Foundation [1], it is a > de-facto standard for MSI installers. It is written in C++ and C#, so it > doesn't have a direct Java API. Installer's "input descriptor" should be > written in XML format and then processed by WiX tools to generate a MSI. > > Using WiX' XSD-schema [3] we can generate [4] JAXB classes [5] from that > schema that effectively gives us a Java API for generating XML descriptors. > JAXB-generated API is by no means elegant (example [6]), but quite flexible > - all WiX features can be used though it. > > wixgen.jar utility (created on top of JAXB API) itself is not of much > interest - it is basically a limited (albeit fine-tuned) NIH version of the > WiX' heat utility [7]. But JAXB classes IMO may be useful for developing > additional tooling for creating MSI installers. > > For example Maven plugin can be developed to build MSI installers for Java > applications. And more features can be packed into such plugin: for example > some time ago I was doing a Maven plugin [8] for installers (non-MSI) to > install Java apps as Windows Services using ProcRun/PrunSrv [9] tools. The > same Windows Services support can be done with WiX. And as AFAIK main > author of ProcRun/PrunSrv works for RH - such plugin can be supported quite > well. > > Another example is a possible Eclipse plugin for WiX. VisualStudio has one > [10], probably something similar can be developed for Eclipse. And while > WiX is Windows-only, there exists a msitools project [11] in Fedora that > supports a subset of WiX' XSD-schema. > > Currently there are no plans for the further development of WixGen, as it > currently covers required features for OpenJDK installer (link to MSI [12] > - as an example generated by WixGen). But if there will be some interest in > creating additional tooling for MSI installers - I can assist in such > efforts. > > > [1] http://www.outercurve.org/ > [2] https://github.com/akashche/wixgen > [3] > https://github.com/akashche/wixgen/blob/c77cf791399b6b0a9304f4deec6b7aa14b80b280/wixgen-jaxb/src/main/resources/com/redhat/akashche/wixgen/jaxb/wix.xsd > [4] > https://github.com/akashche/wixgen/blob/c77cf791399b6b0a9304f4deec6b7aa14b80b280/wixgen-jaxb/pom.xml#L37 > [5] http://akashche.github.io/wixgen/wixgen-jaxb/apidocs/ > [6] > https://github.com/akashche/wixgen/blob/19bd1a0b7f24df5034a868f37eeff17c5a61d0df/wixgen-dir/src/main/java/com/redhat/akashche/wixgen/dir/DirectoryGenerator.java#L48 > [7] http://wixtoolset.org/documentation/manual/v3/overview/heat.html > [8] https://github.com/alexkasko/windows-service-installer > [9] http://commons.apache.org/proper/commons-daemon/procrun.html > [10] > https://visualstudiogallery.msdn.microsoft.com/b6868002-9770-4479-80a7-259de34df527 > [11] https://wiki.gnome.org/msitools > [12] > https://github.com/ojdkbuild/ojdkbuild/releases/download/1.8.0.91-3/java-1.8.0-openjdk-1.8.0.91-3.b14.windows.x86_64.msi > > -- > -Alex > > _______________________________________________ > Devtools mailing list > [email protected] > https://www.redhat.com/mailman/listinfo/devtools >
_______________________________________________ Devtools mailing list [email protected] https://www.redhat.com/mailman/listinfo/devtools
