[wix-users] Unable to upgrade per-machine driver package with burn bundle
Steve Sanders
steve at keyba.se
Tue Aug 2 15:34:46 PDT 2016
I've been trying to make a mixed bundle with a per-user application package
and per-machine driver package. It seems to work fine on initial install,
asking for elevation only when the drivers need to be applied. But when an
upgrade is applied with newer driver package, it uninstalls the current
driver without installing the new one, and I see a line like this in the
log, which seems to explain what's going on:
Skipping cross-scope dependency registration on package: Dokan_x64.msi,
bundle scope: PerUser, package scope: PerMachine
The UAC prompt does happen when running the updated bundle.
I have seen other bugs and discussions around "mixed bundles", such as
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/bundle-with-mixed-privilege-packages-td7601094.html
Our fallback is to error out with a message to manually uninstall the
existing driver package on update, but it would be nice to not have to do
that.
Bundle logs:
https://gist.github.com/zanderz/efc710d9bf4e4099687b0edc056304b1
The per machine package project file can be seen here:
https://github.com/keybase/dokany/blob/zanderz/test_2016.08.02/dokan_wix/Dokan_x64.wxs
Per user package:
https://github.com/keybase/client/blob/zanderz/installer_2016.08.02/packaging/windows/WIXInstallers/KeybaseApps/KeybaseApps.wxs
Burn bundle:
https://github.com/keybase/client/blob/zanderz/installer_2016.08.02/packaging/windows/WIXInstallers/KeybaseBundle/Bundle.wxs
Burn v3.10.2.2516
Windows 10
Am I correct in assuming that the per-machine package is gone after
updating due to "Skipping cross-scope dependency registration", and if so,
what can I do?
More information about the wix-users
mailing list