command to accept VirtualBox PUEL (for virtualbox-ext-pack installation)?

i'm creating a script for downloading and installing some programs and adjust their settings without the need for an interaction during the whole process.

so far so good, but now i'm stuck at the virtualbox-ext-pack: it stops the whole process and waits until the VirtualBox PUEL is accepted or rejected (similar to ttf-mscorefonts-installer, steam, etc.).
for ttf-mscorefonts-installer there is a solution found in this answer with a one-liner, but since i'm not familiar with debconf (and investigating with gkdebconf also doesn't get me further) i have no clue what command(s) to use for installing virtualbox-ext-pack unattended.


Solution 1:

thanks to this solution for ttf-mscorefonts-installer and the hints in this question for steam i figured out the correct command for virtualbox-ext-pack:

echo virtualbox-ext-pack virtualbox-ext-pack/license select true | sudo debconf-set-selections

Solution 2:

As the UUID changes from version to version (or whenever the PUEL is updated), it can be accepted by ...

echo "y" | sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.0.vbox-extpack

Solution 3:

In the command line, you can use the --accept-license parameter to perform an unattended installation.

sudo VBoxManage extpack install <package> --accept-license=<uuid>

How to obtain the UUID for the --accept-license ?

The --accept-license requires an UUID that you must obtain accepting the license manually.

  1. You must run the installer manually first. For the 5.2.0 version,

    wget http://download.virtualbox.org/virtualbox/5.2.0/Oracle_VM_VirtualBox_Extension_Pack-5.2.0.vbox-extpack
    sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.0.vbox-extpack
    
  2. The installer will show you a license text that you must accept

    VirtualBox Extension Pack Personal Use and Evaluation License (PUEL)
    
    License version 10, 20 July 2017
    
    PLEASE READ THE FOLLOWING ORACLE VM VIRTUALBOX EXTENSION PACK PERSONAL
      :
    
    Do you agree to these license terms and conditions (y/n)? y
    
  3. After you accept, the installer will show you the UUID for the accept license.

    License accepted. For batch installaltion add
    --accept-license=b674970f720eb020ad18926a9268607089cc1703908696d24a04aa870f34c8e8
    to the VBoxManage command line.
    

How to use the --accept-license ?

Once you have the UUID, you can use the command line to perform an unattended installation. For the 5.2.0 version,

sudo VBoxManage extpack install $HOME/installers/Oracle_VM_VirtualBox_Extension_Pack-5.2.0.vbox-extpack \
    --accept-license=b674970f720eb020ad18926a9268607089cc1703908696d24a04aa870f34c8e8