<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hi Thomas,<br>
      <br>
      Our requirements are very simple. The upgrade, uninstallation and
      installation should:<br>
      <br>
      1.  Not require *any* extra commands to be run manually by the
      user.<br>
      2.  All drivers should be loaded, active, upgraded without
      requiring reboots. After an upgrade new drivers should be active
      and running VirtualBox VMs after an upgrade should really use the
      new driver.<br>
      <br>
      As long as the run-once SMF script can be invoked without any
      manual commands by the user that is great and a solution we can
      accept. If it -does- require manual stuff, we already had such a
      thing working a while back with a script which does the job (fixup
      partial install done by pkg(5)).<br>
      <br>
      Regards,<br>
      Ram.<br>
      <br>
      On 04/03/2014 12:33 AM, Thomas Gouverneur wrote:<br>
    </div>
    <blockquote cite="mid:0d92e655bbdb1ed0f00f0278ed2c81fe@espix.net"
      type="cite">
      <p>BTW, I just upgraded the documentation on github so it's more
        descriptive, with example of running the script and also running
        an upgrade:</p>
      <p> </p>
      <p><a class="moz-txt-link-freetext" href="https://github.com/tgouverneur/VBox-SVR2IPS">https://github.com/tgouverneur/VBox-SVR2IPS</a></p>
      <p> </p>
      <p>Let me know,</p>
      <p> </p>
      <p>--Thomas</p>
      <p> </p>
      <p>Le 2014-04-02 22:45, Thomas Gouverneur a écrit :</p>
      <blockquote type="cite" style="padding-left:5px;
        border-left:#1010ff 2px solid; margin-left:5px; width:100%"><!-- html ignored --><!-- head ignored --><!-- meta ignored -->
        <p>Klaus,</p>
        <p>The current script I've been working on is doing exactly what
          you describe. I'm adding a run-once service into SMF.</p>
        <p>I also add an /opt/VirtualBox/VERSION file with the package's
          version string inside it.</p>
        <p>When run-once SMF service start, it checks this file against
          its latests known version and if that doesn't match, a
          postinstall + driver cleaning is ran.</p>
        <p> </p>
        <p>How can I work with you guys to know what's potentially
          currently missing and how you'd like it to be implemented?</p>
        <p>Also, what is your possibilities at Oracle to make an IPS
          repository available?</p>
        <p>I'd really like to get things moving in the good direction
          there, IPS is really an improvement to me and I guess also to
          a lot of other virtualbox users.</p>
        <p>If needed, we can have a call together to discuss this
          further off-list... let me know.</p>
        <p> </p>
        <p>--Thomas</p>
        <p> </p>
        <p>Le 2014-04-02 17:52, Klaus Espenlaub a écrit :</p>
        <blockquote style="padding-left: 5px; border-left: #1010ff 2px
          solid; margin-left: 5px; width: 100%;">
          <pre>Hi Thomas,

On 02.04.2014 14:45, Thomas Gouverneur wrote:</pre>
          <blockquote style="padding-left: 5px; border-left: #1010ff 2px
            solid; margin-left: 5px; width: 100%;">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.</blockquote>
          <pre>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.</pre>
          <blockquote style="padding-left: 5px; border-left: #1010ff 2px
            solid; margin-left: 5px; width: 100%;">What do you think?
            Could this be integrated?</blockquote>
          <pre>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)...

Klaus</pre>
          <blockquote style="padding-left: 5px; border-left: #1010ff 2px
            solid; margin-left: 5px; width: 100%;">--Thomas Le
            2014-04-02 11:29, ramshankar venkataraman a écrit :
            <blockquote style="padding-left: 5px; border-left: #1010ff
              2px solid; margin-left: 5px; width: 100%;">On 31/03/2014
              23:06, Thomas Gouverneur wrote:
              <blockquote style="padding-left: 5px; border-left: #1010ff
                2px solid; margin-left: 5px; width: 100%;">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?</blockquote>
              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.
              <blockquote style="padding-left: 5px; border-left: #1010ff
                2px solid; margin-left: 5px; width: 100%;">--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:<a moz-do-not-send="true"
                  href="https://github.com/tgouverneur/VBox-SVR2IPS">https://github.com/tgouverneur/VBox-SVR2IPS</a>
                And an example repository can be found there:<a
                  moz-do-not-send="true"
href="http://mdma.igh.cnrs.fr/vbox/en/catalog.shtml?show_all_versions=1&action=Refresh">http://mdma.igh.cnrs.fr/vbox/en/catalog.shtml?show_all_versions=1&action=Refresh</a>
                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</blockquote>
            </blockquote>
            -- --Thomas</blockquote>
          <pre>_______________________________________________
vbox-dev mailing list
<a moz-do-not-send="true" href="mailto:vbox-dev@virtualbox.org">vbox-dev@virtualbox.org</a>
<a moz-do-not-send="true" href="https://www.virtualbox.org/mailman/listinfo/vbox-dev">https://www.virtualbox.org/mailman/listinfo/vbox-dev</a>
</pre>
        </blockquote>
        <p> </p>
        <div>
          <pre>-- 
--Thomas</pre>
        </div>
        <!-- html ignored --><br>
        <pre>_______________________________________________
vbox-dev mailing list
<a moz-do-not-send="true" href="mailto:vbox-dev@virtualbox.org">vbox-dev@virtualbox.org</a>
<a moz-do-not-send="true" href="https://www.virtualbox.org/mailman/listinfo/vbox-dev">https://www.virtualbox.org/mailman/listinfo/vbox-dev</a>
</pre>
      </blockquote>
      <p> </p>
      <div>
        <pre>-- 
--Thomas</pre>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
vbox-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:vbox-dev@virtualbox.org">vbox-dev@virtualbox.org</a>
<a class="moz-txt-link-freetext" href="https://www.virtualbox.org/mailman/listinfo/vbox-dev">https://www.virtualbox.org/mailman/listinfo/vbox-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>