Dependency Management
The Montage Launcher performs most of its functions behind the scenes for ecosystem client tools and software. The services provided to ecosystem software includes:
· Creating new activities
· Creating new installation targets
· Downloading packages to the ecosystem
· Installing packages to installation targets
· Evaluating software package policies at design time and runtime
· Providing licensing resolution and product purchasing interactions for software packages at runtime
Although the ecosystem software generally hides the details of installing packages, it is helpful to understand how dependencies can be manually requested or removed in the Montage Launcher.
The QuickStart packages in the Ecosystems were the first place where manual installation requests can be made. Using the Virtuoso.Wizard.Port package (the Virtuoso Port Wizard desktop application) as an example, we see its initial state is not unified and not installed:
Click “Manage” to manage the package. Note that for this package, the Activity Context is already specified as the common “Bootstrapper” activity by mousing over the boot icon. The Target (installation target) is also already specified as the common “Installed Applications” installation target.
The “Simple Version Selection” tab is shown, because no other packages transitively depend on the Virtuoso Port Wizard, and so we are free to simply select which version we would like to install from the list of all versions of the package.
By clicking version “1.0.0”, we are prompted to confirm that we want to install version 1.0.0 of this package.
Click “Yes’, and the Montage Launcher will download and run the installer for the Virtuoso Port Wizard. The installer may run behind the Montage Launcher, so you may need close the package management dialog to see the installer. Follow the installation as usual. You will need to click “Exit” after the installer runs to close the installer.
After the installer runs, we see the package is unified and installed to version 1.0.0.
We could uninstall the package by clicking the “(No Version Requested)” option. However, instead, close this dialog and then manually uninstall the Virtuoso Port Wizard in Windows:
After uninstalling, we see that the Port Wizard is still unified to version 1.0.0, but has no installed version:
To resolve this, click “Manage” again, and we see 1.0.0 is the selected version, but there is now an “Install” button next to 1.0.0.
Click the Install button and Montage will rerun the installer. After the installer completes, the Launcher will refresh and show the package as installed to 1.0.0:
Now click on the “(No Version Requested)” item. After being prompted to confirm, the Launcher will remove the Port Wizard from the domain, however the Port Wizard will still be installed, as shown below. The Launcher does not automatically uninstall packages just because they are no longer a requirement for the domain.
To uninstall the Port Wizard, click the “Uninstall” button and the Port Wizard will be uninstalled.