UNIX Package Managers Integration Proposal

While it is pretty obvious how to integrate with Windows' Add/Remove Programs registry, integration with UNIX package managers is more tricky in both technical and theological aspects:

  • Most package managers use binary formats to store their database (Berkeley DB or alike), so we would need some kind of third-party driver to access it. This significantly adds to download size and introduces an unwanted dependency on third-party bits.
  • If we are to follow windows' style for integration, this would imply the following: triggering a "native" uninstall command (removing a package) would bring up the installer GUI and require some user input in order to uninstall. This conflicts with the idea, tradition and expected user experience.

Hence, the suggested approash is the following:

Install time:

  1. After the component has been installed, generate a dummy rpm (or deb or pkg).
  2. Install this dummy rpm using the package manager's facilities

The rpm should be composed in such a way so it invokes NBI engine in silent mode, which uninstalls the selected component and those, which depend on it without launching the UI and requiring any user interaction.

Uninstall time:

  1. The user invokes the rpm removal routine using the package manager's facilities
  2. The rpm removal routine invokes NBI engine, which performs the actual uninstallation

This will require some additional functionality developed earlier, namely:

  1. Support for silent uninstallation
  2. Support for generation of such "dummy" packages for rpm (linux), dpkg (linux) ang pkg (solaris)

However, this will enable us at some later time to easily generate natively wrapped installers.

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo