diff options
Diffstat (limited to 'user/virtualbox-guest-additions/virtualbox-guest-additions.initd')
-rwxr-xr-x | user/virtualbox-guest-additions/virtualbox-guest-additions.initd | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/user/virtualbox-guest-additions/virtualbox-guest-additions.initd b/user/virtualbox-guest-additions/virtualbox-guest-additions.initd new file mode 100755 index 000000000..e43092f72 --- /dev/null +++ b/user/virtualbox-guest-additions/virtualbox-guest-additions.initd @@ -0,0 +1,35 @@ +#!/sbin/openrc-run +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +description="VirtualBox control service" + +pidfile="/var/run/vboxguest-service.pid" +command="/usr/sbin/VBoxService" +command_args="--foreground" +start_stop_daemon_args="--make-pidfile --pidfile ${pidfile} --background" + +depend() { + need localmount +} + +start_pre() { + einfo "Loading kernel modules" + /sbin/modprobe vboxguest 2>&1 && \ + /sbin/modprobe vboxsf 2>&1 + eend $? +} + +stop_pre() { + einfo "Unmounting shared folders" + /bin/grep vboxsf /proc/mounts | /usr/bin/cut -f2 -d' ' | /usr/bin/xargs -n1 -r /bin/umount + eend $? +} + +stop_post() { + einfo "Removing kernel modules" + /sbin/modprobe -r vboxsf 2>&1 && \ + /sbin/modprobe -r vboxguest 2>&1 + eend $? +} |