Hi Jon,

> What system are you using to generate MSIs? Marc (CC'd) has a patch for WIX
> that adds support for generating ARM64 MSIs.

I am using a WiX to make two separate MSI files (x86 and x64). This is the easy 
part - I had the WiX MSI package ready back at Hackatlon in an hour or so. 
However, those MSI files do not create a TAP interface on install -- which is a 
regression.

The TAP interface will be created on install using a custom action (DLL). I 
want to support MSI custom action deferred/commit/rollback functionality in 
full.

An additional EXE command line utility will be included in the install to allow 
later TAP interface management completely replacing the 
tapinstall.exe/devcon.exe.

> Are you wrapping two arch-specific MSIs in an EXE, or doing one mixed MSI?
> Two MSIs will be very simple to add ARM64 to, while one mixed MSI will be
> harder.

I see no drawbacks compiling the custom action DLL and EXE command line utility 
for ARM64 platform and providing a third MSI file for ARM64 platform as you 
suggest. This is the best way to go in my opinion too.

Finally, the plan is to offer TAP driver binaries for download as separate 
platform-specific MSI files (for IT admins) and a simple self-extractable x86 
EXE containing all the MSI files and a 
"detect-platform-and-launch-appropriate-MSI" bootstrapper (for end-users). For 
this EXE bundle WiX, 7-Zip or some other easy to implement and maintain 
framework is to be used.

> As for tapinstall, a standalone tapinstall under VS2017 will work perfectly 
> with
> what I'm building since the EWDK consumes the vcxproj and sln files directly. 

The new MSI custom action and EXE utility I am working on it are built using 
vcxproj. If we get a green light to port the driver building itself to a 
vcxproj as well, the TAP driver build environment could move from Python to 
VS2017.

However, while we can potentially renew the TAP driver build process (being 
Windows-only), we are limited with options when packaging OpenVPN for Windows. 
For OpenVPN Windows packaging, the requirement to prepare MSI files within the 
Linux environment remains. After a discussion msitools package was chosen for 
the job.

Yes, I must kick myself and start working on this seriously!?

Best regards,
Simon

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to