[vbox-dev] IPS package

Klaus Espenlaub klaus.espenlaub at oracle.com
Wed Apr 2 15:52:05 GMT 2014

Hi Thomas,

On 02.04.2014 14:45, Thomas Gouverneur wrote:
> Ram,
> As far as I'm aware, there's no way to automatise it, although I find it
> better than nothing to benefit from the IPS packaging rather than the
> SVR one.
> On another side, we can still display a big fat warning when the user is
> trying to install/upgrade with the instructions to get this done the
> proper way.

If I'm not completely behind this isn't possible with IPS, as one of its 
design decisions was that a package install/upgrade/uninstall cannot 
ever block to ask for input or provide any output besides requesting a 
reboot. I don't think anyone seriously considers reboots to be an option 
(it's a problem, not a solution).

To reach a good usability a VirtualBox IPS needs to be able to reliably 
trigger some activity for ALL of the following situations: 
postinstall/postupgrade/postuninstall (and it'd be nice to have 
preinstall/preupgrade/preuninistall for doing some truly vital 
cleanups). Would it be possible to use a variable component in the SMF 
run-once service name like the package version to trigger activities for 
upgrades (only necessary for the case of upgrading a live system)? 
Anything automatable in a build process is fine with us. Trust me, we're 
not afraid of complex implementations :)

If these activities aren't possible then the only way would be to detect 
a driver/application version mismatch when some VirtualBox application 
is started, and this is where we get into the very bad user experience 
region: this is generally done by non-root users, who don't have the 
privileges to rectify the problem and have to ask the admin to complete 
the manual part of the upgrade.

I briefly thought about doing a "dummy IPS" package, i.e. one which 
simply dumps the PKG file into some location, and use the run-once 
service to do the PKG install, but honestly this is several orders of 
magnitude too ugly to be acceptable.

> What do you think? Could this be integrated?

We're not against IPS packaging, we'd be gladly providing IPS packages 
tailored for Solaris 11 ourselves if only there would be a good solution 
in sight which is user friendly. So far we couldn't find any way to 
create an IPS package with an acceptable user experience, and that's why 
we stick to the PKG stuff which has the necessary hooks.

The IPS package has quite some potential (directly installing the 
package as part of autoinstall, skipping the useless 32 bit binaries, 
skipping irrelevant drivers like the streams based bridging support, 
i.e. reducing the package size significantly)...


> --Thomas
> Le 2014-04-02 11:29, ramshankar venkataraman a écrit :
>> On 31/03/2014 23:06, Thomas Gouverneur wrote:
>>> Ram,
>>> Thanks for your answer.
>>> 1. Yes
>>> 2. Yes, considering that you need to run an 'svcadm restart
>>> virtualbox-run-once' service that gets installed with the first
>>> installation. Then, when an upgrade is done, this service is
>>> responsible to upgrade drivers and/or services at its next start. (so
>>> either manually, or, indeed after a reboot).
>>> Does that make sense?
>> So it requires manual running of a service to make the upgrade work?
>> Is it possible to automate this somehow as part of the IPS upgrade
>> procedure itself?
>> Regards,
>> Ram.
>>> --Thomas
>>> Le 2014-03-31 13:49, Ramshankar a écrit :
>>>     Hi,
>>>     Thanks for the work and the heads up, but before I look into
>>>     this, a couple of questions:
>>>     1. Does the installation work without requiring reboots (drivers
>>>     are loaded and active after installation)?
>>>     2. Does upgrading VirtualBox versions work without requiring
>>>     reboots (old drivers are unloaded, removed and new ones are
>>>     installed and loaded) ?
>>>     Regards,
>>>     Ram.
>>>     On 03/30/2014 03:42 PM, Thomas Gouverneur wrote:
>>>         Hi!
>>>         I'm writing today because I've been asked some time ago to
>>>         write a converter from SVR to IPS packages for VirtualBox to
>>>         allow the installation of VirtualBox and of the extension
>>>         pack through IPS. I wonder now if this work can be useful
>>>         upstream too?!
>>>         I published the scripts there:https://github.com/tgouverneur/VBox-SVR2IPS
>>>         And an example repository can be found there:http://mdma.igh.cnrs.fr/vbox/en/catalog.shtml?show_all_versions=1&action=Refresh
>>>         The repository has been built with the VirtualBox.org's packages converted using the scripts present inside the GitHub repository listed below.
>>>         NOTE: This repo has only been tested with Solaris 11.1.
>>>         Any idea with who I could start the discussion to see what would those package be missing to allow a possible upstream adoption, so we can all have IPS upstream packages of VirtualBox in the future?
>>>         Thanks,
>>>         --Thomas
>>> --
>>> --Thomas
> --
> --Thomas

More information about the vbox-dev mailing list