Page 1 of 1

VirtualBox preferences (mass deployment)

Posted: 19. May 2018, 02:02
by donmontalvo
We were asked to package VirtualBox for mass deployment to macOS users.

Where are the preferences to disable EULA and Updates (we're on the hook for both).

Disabling Updates via GUI doesn't seem to write to ~/Library/Preferences/org.virtualbox.app.VirtualBox.plist so curious where this pref is stored.

TIA,
Don

Re: VirtualBox preferences (mass deployment)

Posted: 19. May 2018, 02:10
by donmontalvo
Found it in ~/Library/VirtualBox/VirtualBox.xml > <ExtraDataItem name="GUI/UpdateDate" value="never"/>.

But...the file seems to warn that it'll be overwritten...guessing there's no programmatic way to do this?

Code: Select all

<?xml version="1.0"?>
<!--
** DO NOT EDIT THIS FILE.
** If you make changes to this file while any VirtualBox related application
** is running, your changes will be overwritten later, without taking effect.
** Use VBoxManage or the VirtualBox Manager GUI to make changes.
-->

Re: VirtualBox preferences (mass deployment)

Posted: 19. May 2018, 11:16
by Martin
Did you try the 'VBoxManage setextradata' command?

Re: VirtualBox preferences (mass deployment)

Posted: 19. May 2018, 23:20
by socratis
donmontalvo wrote:We were asked to package VirtualBox for mass deployment to macOS users.
VirtualBox is not your typical app. It needs to install kernel drivers. How exactly are you planning on doing that? Especially if you're in 10.13.x, where you have to specifically and interactively have an administrator allow the installation of a kernel driver from a developer (such as Oracle)?

Mind you that not even RDP can work in that case, you have to be physically in front of the computer to allow that? Or are you planning to mass sabotage the security features of your OSX installations by disabling all the security features of 10.13.x?

Plus, you can't mass distribute the Ext.Pack, that's a clear violation of its license agreement!

Re: VirtualBox preferences (mass deployment)

Posted: 22. May 2018, 08:10
by donmontalvo
Hi @socratis,

Yep, hopefully one day VirtualBox will move away from KEXTs. ;)

With that said, we use Jamf Pro to manage 10K+ Macs at a multimedia company, so we'd just add the VirtualBox TeamID (VB5E2TV963) to our whitelist configuration profile. ¯\_(ツ)_/¯

Back to the original question, we're trying to suppress EULA (enterprise are not legally able to accept terms on behalf of company), and updates (all update are tested before staged deployment).
Plus, you can't mass distribute the Ext.Pack, that's a clear violation of its license agreement!
Can you provide some context? Are you saying we can't deploy managed settings? Or are you saying a tool that another person mentioned (which I never heard of) can't be deployed?

I'm only trying to find out how to disable EULA and updates...it's a straight forward need/request...I would be surprised/disappointed if there isn't a programatic way to do that. :)

Thanks,
Don

Re: VirtualBox preferences (mass deployment)

Posted: 22. May 2018, 09:19
by Martin
The license for the VirtualBox Extension Pack doesn't allow commercial use. You can only redistribute / deploy the base VirtualBox package which is licensed as GPL2 in a commercial setting without buying licenses.
The Extension Pack binaries are released under the VirtualBox Personal Use and Evaluation License (PUEL).

Re: VirtualBox preferences (mass deployment)

Posted: 22. May 2018, 10:03
by socratis
donmontalvo wrote:we'd just add the VirtualBox TeamID (VB5E2TV963) to our whitelist configuration profile
Great. That should make the installation of the main program go smoother. And here's the summary of what you need to do to pretty much get VirtualBox installed:
# Detach any "VirtualBox" volumes, if any, in case of a previous failed attempt
sudo hdiutil detach /Volumes/VirtualBox
# Mount the VirtualBox.dmg and run the Uninstaller, to remove any previous VirtualBox version. If any...sudo hdiutil attach "$MY_VirtualBox"
sudo /Volumes/VirtualBox/VirtualBox_Uninstall.tool --unattended
# Install VirtualBox. It *has to* be installed in the "/Applications" directory of every OSX.
sudo installer -pkg /Volumes/VirtualBox/VirtualBox.pkg -target /
# Detach the  VirtualBox volume
sudo hdiutil detach /Volumes/VirtualBox
donmontalvo wrote:we use Jamf Pro to manage 10K+ Macs
And from the Extension Pack license agreement that Martin just linked to:
§ 2 Grant of license. Oracle grants you a personal, non-exclusive, non-transferable, limited license without fees to reproduce, install, execute, and use internally the Product on Host Computers for your Personal Use, Educational Use, or Evaluation. “Personal Use” is noncommercial use solely by the person downloading the Product from Oracle on a single Host Computer, provided that no more than one client or remote computer is connected to that Host Computer and that client or remote computer is used solely to remotely view the Guest Computer(s). “Educational Use” is any use by teachers or students in an academic institution (schools, colleges and universities) as part of the institution’s educational curriculum. “Evaluation” means testing the Product for up to thirty (30) days; after expiry of that term, you are no longer permitted to use the Product. Personal Use and/or Educational Use expressly exclude any use of the Product for commercial purposes or to operate, run, or act on behalf of or for the benefit of a business, organization, governmental organization, or educational institution.
It looks to me that you have to contact Oracle if you want to deploy VirtualBox's Extension Pack on 10K+ Macs...
NOTE: this license agreement does not apply to the main VirtualBox program, only the Extension Pack.
donmontalvo wrote:Are you saying we can't deploy managed settings?
About that... VirtualBox doesn't work with a per-OSX settings, it works with a per-user settings. And they're not your .plist settings, they're a simple XML file. You can "manipulate"/"control" them from the command line.

So (to use your example), if you don't want your users to be checking for VirtualBox updates, you could do that from the command-line (via a login script?), but any knowledgeable user could override that "directive"/"suggestion". BTW, the command would be:
VBoxManage setextradata global "GUI/UpdateDate" "never"

PS. Why do I get the feeling that the number of posts in the "OSX Hosts" section is going to get a boost? That's a "good thing"™ ;)