[vbox-dev] Very nice, that you have started integrating Unattended Installer

Klaus Espenlaub klaus.espenlaub at oracle.com
Mon Jan 16 16:03:35 UTC 2017

Hi Alexey,

On 04.01.2017 10:49, Alexey Eromenko wrote:
> I see that your work is based, at least in part, on my previous patch
> and research paper. Very nice.

Yes, and your work is much appreciated - it helps greatly, even if we 
don't take much of the contribution as you wrote it. Do not interpret it 
as criticism or a hint that your code quality is bad - it simply means 
that we don't have exactly the same design goals and implementation 

> A small note:
> I suggest to move the whole section of "construct VM ()" from "new VM
> wizard" and into Main Code.
> Why ?
> This way it will allow us to construct both normal VMs *and* unattended
> VMs from CLI, instead of GUI, and add all suggested hardware controllers
> and disks quickly.

Yes, and we're well on the way: see the new API method 
IMachine.applyDefaults. I know that in trunk it's still showing as not 
implemented, but it'll be there eventually...

In our design of this API method most likely only the creation of the 
disk images will be left to the API client. While we have some 
reasonable size defaults, users might still totally different opinions 
(want it smaller or bigger for some specific reason, or have multiple 

> I didn't do it my patch, because the change would be pretty invasive,
> and I wanted to keep things clam and conservative.

Totally clear, and it would've been a separate task anyway.

> Nowadays, if you create a VM from CLI (or API), you will need to
> manually know which audio and which disk controller to use for a
> particular guest OS, and if you try to create an Unattended Install VM
> from CLI, it will break down awfully, . (even using
> IMachine::IUnattended Main API)
> The whole "suggested hardware" mechanism for new VM needs to be moved
> from GUI into Main API, "IMachine".

Good to know that you agree with our plan :)

> ===
> Another question:
>     In file Main/idl/VirtualBox.xidl
>     <https://www.virtualbox.org/changeset/64994/vbox/trunk/src/VBox/Main/idl/VirtualBox.xidl>
> You seem to be using a new parameter:
>  3815   <attribute name="imageIndex" type="unsigned short">
>  3816     <desc>
>  3817       The image index on installation CD\DVD used to install.
>  3818       Used only with Windows installation CD\DVD
>  3819     </desc>
>  3820   </attribute>
> Why is it needed ?

Some Windows install media have multiple OSes to choose from, and this 
image index is providing the information which one to use.

Can't tell yet if this will stay forever or if it's a short term 
simplification which will later be replaced by a more high level 
selection of which OS the user wants to install from a particular ISO.

BTW, we've decided that short term we'll only go for unattended install 
of OSes which don't need re-mastering of the install ISO (which means 
that OpenSUSE Leap and SLES can't be handled - maybe later we'll find a 
good way to set the config file location through PXE booting, which 
would be rather indirect still, or we actually have to bite the bullet 
of re-mastering).


> --
> -Alexey Eromenko "Technologov"

More information about the vbox-dev mailing list