summaryrefslogtreecommitdiff
path: root/user/virtualbox-guest-additions/virtualbox-guest-additions.initd
diff options
context:
space:
mode:
Diffstat (limited to 'user/virtualbox-guest-additions/virtualbox-guest-additions.initd')
-rwxr-xr-xuser/virtualbox-guest-additions/virtualbox-guest-additions.initd35
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 $?
+}