Revision as of 23:50, June 26, 2014 by Duncan.britton (Talk | contribs)


Source Repository:Repository:Gentoo Portage Tree

Summary: A desktop virtualization package from Oracle Corporation that allows you to run a guest operating system (Linux, Windows or other) on your Linux system.

Use Flags

Install Guest System Tools ISO
Install extension module packages
Build without any graphic frontend
Enable building of SDK
Controls installation of special USB udev rules.
Build and install the VirtualBox webservice



Project Unfork Status

Here's an update on Project Unfork, plus other neat things.
2015-10-03 by Drobbins

IP Space Migration Continues

All Funtoo user containers in the 8.28 IP space will be moving into our new IP space (172.97) over the next few days. If you have DNS set up -- be sure to watch your container and update to the new IP! DNS will be updated after the move.
2015-08-27 by Drobbins

Funtoo Hosting IP Move

Funtoo user containers with IPs in the 72.18.x.x range will be gradually migrating to new IP addresses this week. If you have DNS entries for your containers, please be aware that your DNS will need to be updated.
2015-08-11 by Drobbins



We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

Glossary of Terms

Host O/S 
system running on computer you are actually on;
Guest O/S 
system installed within VirtualBox;
Guest Additions 
drivers for the Guest O/S.

Versions of VirtualBox

VirtualBox is available in two versions :

  1. Source based package : app-emulation/virtualbox;
  2. Binary package : app-emulation/virtualbox-bin.

The binary package contains extensions which are not available with the source one. When we install the source based package, we must refer to the USE flags list hereafter.

USE flags

Use flag Default Recommended Description
additions Yes Yes Install Guest System Tools ISO.
alsa Yes Yes Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture).
doc No Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally.
extensions No Yes Install extension module packages.
headless No Build without any graphic frontend.
java No No Add support for Java.
opengl Yes Add support for OpenGL (3D graphics).
pam Yes Yes Add support for PAM (Pluggable Authentication Modules) - DANGEROUS to arbitrarily flip.
pulseaudio Yes Add support for PulseAudio sound server.
python Yes Add optional support/bindings for the Python language.
python_single_target_python2_7 Yes Build for Python 2.7 only.
python_targets_python2_7 Yes Build with Python 2.7
qt4 Yes Yes Add support for the Qt GUI/Application Toolkit version 4.x. No GUI when not set.
sdk Yes Enable building of SDK.
vboxwebsrv No No Build and install the VirtualBox webservice.
vnc No Enable VNC (remote desktop viewer) support.

Depending on desktop environment, some USE flags may already be set or unset. Set USE flags as per Recommended column when unset.



This tutorial deals with installation of source based package.

# echo ">=app-emulation/virtualbox-extpack-oracle-4.3.8 PUEL" >> /etc/portage/package.license/virtualbox
# emerge app-emulation/virtualbox

Installation of app-emulation/virtualbox implies app-emulation/virtualbox-extpack-oracle. That is why PUEL license must be enabled.

Guest Additions

Make sure that user running X session belongs to vboxguest group. Create group when it does not exist. Add user to the group. That will enable :

  • Shared clipboard;
  • Display resizing;
  • Seamless mode;
  • Drag & Drop.
# groupadd vboxguest
# gpasswd -a ''user'' vboxguest

Windows Guests

You must enable additions USE flag when you intend to install Windows as a guest O/S. That will also install the ISO image containing all necessary Windows guest drivrers.

Linux Guests

If you want to run Funtoo GNU/Linux as a guest O/S, emerge app-emulation/virtualbox-guest-additions in the Funtoo GNU/Linux guest O/S. For other GNU/Linux, please refer to VirtualBox documentation.

Post Installation

You will not be able to run and use VirtualBox as a regular user if you are not a member of the vboxusers group.

# gpasswd -a ''user'' vboxusers

You must re-log so changes take effect.

Loading Modules

Required and optional modules must be loaded before launching VirtualBox. You can do that as root or upon boot.


vboxnetadp and vboxnetflt are optional.

As root

# modprobe vboxdrv
# modprobe vboxnetadp
# modprobe vboxnetflt

Upon boot OpenRC

Edit /etc/conf.d/modules :

modules="vboxdrv vboxnetadp vboxnetflt"

Upon boot systemd

# echo 'vboxdrv' >> /etc/modules-load.d/virtualbox.conf
# echo 'vboxnetadp' >> /etc/modules-load.d/virtualbox.conf
# echo 'vboxnetflt' >> /etc/modules-load.d/virtualbox.conf

Kernel Driver

Each time a new kernel is installed, vboxdrv kernel module must be recompiled. To ensure Portage knows about that, look at /var/lib/module-rebuild/moduledb. The following record must be present.


Running emerge @module-rebuild will recompile VirtualBox driver after installation of new kernel.

It is strongly recommended to install sys-kernel/dkms. This package keeps track of Linux kernel changes. It recompiles vboxdrv if necessary.