Skip to content

Commit

Permalink
app-emulation/virtualbox: Revbump to install VBoxVolInfo (via USE="lvm")
Browse files Browse the repository at this point in the history
Package-Manager: portage-2.2.28
Signed-off-by: Lars Wendler <[email protected]>
  • Loading branch information
Lars Wendler committed Mar 11, 2016
1 parent 1e8ce0d commit 249026b
Show file tree
Hide file tree
Showing 3 changed files with 543 additions and 0 deletions.
113 changes: 113 additions & 0 deletions app-emulation/virtualbox/files/virtualbox-ose-5-wrapper
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
#!/bin/sh
## @file
# Oracle VM VirtualBox startup script, Linux hosts.
#

#
# Copyright (C) 2006-2015 Oracle Corporation
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# you can redistribute it and/or modify it under the terms of the GNU
# General Public License (GPL) as published by the Free Software
# Foundation, in version 2 as it comes in the "COPYING" file of the
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
#

PATH="/usr/bin:/bin:/usr/sbin:/sbin"
CONFIG="/etc/vbox/vbox.cfg"

test -r "${CONFIG}" &&
. "${CONFIG}"
test -z "${INSTALL_DIR}" &&
if test -f /usr/lib/virtualbox/VirtualBox &&
test -x /usr/lib/virtualbox/VirtualBox; then
INSTALL_DIR=/usr/lib/virtualbox
else
echo "Could not find VirtualBox installation. Please reinstall."
exit 1
fi

# Note: This script must not fail if the module was not successfully installed
# because the user might not want to run a VM but only change VM params!

if [ "$1" = "shutdown" ]; then
SHUTDOWN="true"
elif ! lsmod|grep -q vboxdrv; then
cat << EOF
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (`uname -r`) or it failed to
load. Please recompile the kernel module and install it by
for m in vbox{drv,netadp,netflt}; do modprobe \$m; done
You will not be able to start VMs until this problem is fixed.
EOF
elif [ ! -c /dev/vboxdrv ]; then
cat << EOF
WARNING: The character device /dev/vboxdrv does not exist.
Please try to reload all the needed kernel modules by:
for m in vbox{netflt,netadp,drv}; do rmmod \$m; done
for m in vbox{drv,netadp,netflt}; do modprobe \$m; done
and if that is not successful, try to re-install the package by:
emerge -1av app-emulation/virtualbox-modules
You will not be able to start VMs until this problem is fixed.
EOF
fi

SERVER_PID=`ps -U \`whoami\` | grep VBoxSVC | awk '{ print $1 }'`
if [ -z "$SERVER_PID" ]; then
# Server not running yet/anymore, cleanup socket path.
# See IPC_GetDefaultSocketPath()!
if [ -n "$LOGNAME" ]; then
rm -rf /tmp/.vbox-$LOGNAME-ipc > /dev/null 2>&1
else
rm -rf /tmp/.vbox-$USER-ipc > /dev/null 2>&1
fi
fi

if [ "$SHUTDOWN" = "true" ]; then
if [ -n "$SERVER_PID" ]; then
kill -TERM $SERVER_PID
sleep 2
fi
exit 0
fi

APP=`basename $0`
case "$APP" in
VirtualBox|virtualbox)
exec "$INSTALL_DIR/VirtualBox" "$@"
;;
VBoxManage|vboxmanage)
exec "$INSTALL_DIR/VBoxManage" "$@"
;;
VBoxSDL|vboxsdl)
exec "$INSTALL_DIR/VBoxSDL" "$@"
;;
VBoxVRDP|VBoxHeadless|vboxheadless)
exec "$INSTALL_DIR/VBoxHeadless" "$@"
;;
VBoxAutostart|vboxautostart)
exec "$INSTALL_DIR/VBoxAutostart" "$@"
;;
VBoxBalloonCtrl|vboxballoonctrl)
exec "$INSTALL_DIR/VBoxBalloonCtrl" "$@"
;;
VBoxDTrace|vboxdtrace)
exec "$INSTALL_DIR/VBoxDTrace" "$@"
;;
vboxwebsrv)
exec "$INSTALL_DIR/vboxwebsrv" "$@"
;;
*)
echo "Unknown application - $APP"
exit 1
;;
esac
exit 0
1 change: 1 addition & 0 deletions app-emulation/virtualbox/metadata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
<flag name="additions">Install Guest System Tools ISO</flag>
<flag name="extensions">Install extension module packages</flag>
<flag name="headless">Build without any graphic frontend</flag>
<flag name="lvm">Build VBoxVolInfo that needs devicemapper from <pkg>sys-fs/lvm2</pkg>.</flag>
<flag name="sdk">Enable building of SDK</flag>
<flag name="udev">Controls installation of special USB udev rules.</flag>
<flag name="vboxwebsrv">Build and install the VirtualBox webservice</flag>
Expand Down
Loading

0 comments on commit 249026b

Please sign in to comment.