|
|
Line 1: |
Line 1: |
| {{Ebuild | | {{Person |
| |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. | | |Bio= |
| |CatPkg=app-emulation/virtualbox | | |Geoloc=51.9826122, 7.7837602 |
| |Maintainer= | | |Location name=x |
| |Repository=Gentoo Portage Tree | | |Blogs= |
| | |Full name=shell |
| | |Email=funtoo@pcspinnt.de |
| | |Nick=s-hell |
| | |Roles= |
| | |Maintains= |
| }} | | }} |
| == Glossary of Terms ==
| | http://www.pcspinnt.de |
| | |
| :;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 :
| |
| | |
| # '''Source based package''' : app-emulation/virtualbox;
| |
| # '''Binary package''' : app-emulation/virtualbox-bin.
| |
| | |
| 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 ==
| |
| | |
| {| class="wikitable" style="margin: 1em auto;" width=80%
| |
| ! width="20%" | Use flag
| |
| ! width="10%" | Default
| |
| ! width="10%" | Recommended
| |
| ! width="60%" | Description
| |
| |-
| |
| | style="text-align:center;" |additions
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |Yes
| |
| | Install Guest System Tools ISO.
| |
| |-
| |
| | style="text-align:center;" |alsa
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |Yes
| |
| | Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture).
| |
| |-
| |
| | style="text-align:center;" |doc
| |
| | style="text-align:center;" |No
| |
| | style="text-align:center;" |
| |
| | Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally.
| |
| |-
| |
| | style="text-align:center;" |extensions
| |
| | style="text-align:center;" |No
| |
| | style="text-align:center;" |Yes
| |
| | Install extension module packages.
| |
| |-
| |
| | style="text-align:center;" |headless
| |
| | style="text-align:center;" |No
| |
| | style="text-align:center;" |
| |
| | Build without any graphic frontend.
| |
| |-
| |
| | style="text-align:center;" |java
| |
| | style="text-align:center;" |No
| |
| | style="text-align:center;" |No
| |
| | Add support for Java.
| |
| |-
| |
| | style="text-align:center;" |opengl
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |
| |
| | Add support for OpenGL (3D graphics).
| |
| |-
| |
| | style="text-align:center;" |pam
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |Yes
| |
| | Add support for PAM (Pluggable Authentication Modules) - DANGEROUS to arbitrarily flip.
| |
| |-
| |
| | style="text-align:center;" |pulseaudio
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |
| |
| | Add support for PulseAudio sound server.
| |
| |-
| |
| | style="text-align:center;" |python
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |
| |
| | Add optional support/bindings for the Python language.
| |
| |-
| |
| | style="text-align:center;" |python_single_target_python2_7
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |
| |
| | Build for Python 2.7 only.
| |
| |-
| |
| | style="text-align:center;" |python_targets_python2_7
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |
| |
| | Build with Python 2.7
| |
| |-
| |
| | style="text-align:center;" |qt4
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |Yes
| |
| | Add support for the Qt GUI/Application Toolkit version 4.x. No GUI when not set.
| |
| |-
| |
| | style="text-align:center;" |sdk
| |
| | style="text-align:center;" |Yes
| |
| | style="text-align:center;" |
| |
| | Enable building of SDK.
| |
| |-
| |
| | style="text-align:center;" |vboxwebsrv
| |
| | style="text-align:center;" |No
| |
| | style="text-align:center;" |No
| |
| | Build and install the VirtualBox webservice.
| |
| |-
| |
| | style="text-align:center;" |vnc
| |
| | style="text-align:center;" |No
| |
| | style="text-align:center;" |
| |
| | Enable VNC (remote desktop viewer) support.
| |
| |}
| |
| | |
| {{fancyimportant|Depending on desktop environment, some USE flags may already be set or unset. Set USE flags as per '''Recommended''' column when unset.}}
| |
| | |
| == Installation ==
| |
| | |
| {{fancyimportant|This tutorial deals with installation of source based package.}}
| |
| | |
| <console>
| |
| ###i## echo ">=app-emulation/virtualbox-extpack-oracle-4.3.8 PUEL" >> /etc/portage/package.license/virtualbox
| |
| ###i## emerge app-emulation/virtualbox
| |
| </console>
| |
| | |
| Installation of <code>app-emulation/virtualbox</code> implies <code>app-emulation/virtualbox-extpack-oracle</code>. That is why PUEL license must be enabled.
| |
| | |
| == Guest Additions ==
| |
| | |
| Make sure that user running X session belongs to <code>vboxguest</code> group. Create group when it does not exist. Add user to the group. That will enable :
| |
| | |
| *Shared clipboard;
| |
| *Display resizing;
| |
| *Seamless mode;
| |
| *Drag & Drop.
| |
| | |
| <console>
| |
| ###i## groupadd vboxguest
| |
| ###i## gpasswd -a ''user'' vboxguest
| |
| </console>
| |
| | |
| === Windows Guests ===
| |
| | |
| You must enable <code>additions</code> 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 <code>app-emulation/virtualbox-guest-additions</code> in the Funtoo GNU/Linux guest O/S. For other GNU/Linux, please refer to [https://www.virtualbox.org/manual/ch04.html#idp11274368 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 <code>vboxusers</code> group.
| |
| | |
| <console>
| |
| ###i## gpasswd -a ''user'' vboxusers
| |
| </console>
| |
| | |
| 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.
| |
| | |
| {{fancynote|<code>vboxnetadp</code> and <code>vboxnetflt</code> are optional.}}
| |
| | |
| ==== As root ====
| |
| | |
| <console>
| |
| ###i## modprobe vboxdrv
| |
| ###i## modprobe vboxnetadp
| |
| ###i## modprobe vboxnetflt
| |
| </console>
| |
| | |
| ==== Upon boot OpenRC ====
| |
| | |
| Edit <code>/etc/conf.d/modules</code> :
| |
| | |
| <pre>modules="vboxdrv vboxnetadp vboxnetflt"</pre>
| |
| | |
| ==== Upon boot systemd ====
| |
| | |
| <console>
| |
| ###i## echo 'vboxdrv' >> /etc/modules-load.d/virtualbox.conf
| |
| ###i## echo 'vboxnetadp' >> /etc/modules-load.d/virtualbox.conf
| |
| ###i## echo 'vboxnetflt' >> /etc/modules-load.d/virtualbox.conf
| |
| </console>
| |
| | |
| === Kernel Driver ===
| |
| | |
| Each time a new kernel is installed, <code>vboxdrv</code> kernel module must be recompiled. To ensure Portage knows about that, look at <code>/var/lib/module-rebuild/moduledb</code>. The following record must be present.
| |
| | |
| <pre>a:1:app-emulation/virtualbox-modules-''version''</pre>
| |
| | |
| Running <code>emerge @module-rebuild</code> will recompile VirtualBox driver after installation of new kernel.
| |
| | |
| It is strongly recommended to install <code>sys-kernel<nowiki>/</nowiki>dkms</code>. This package keeps track of Linux kernel changes. It recompiles <code>vboxdrv</code> if necessary.
| |
| | |
| [[Category:Ebuilds]]
| |
| [[Category:Virtualization]]
| |
| {{EbuildFooter}}
| |