aboutsummaryrefslogtreecommitdiffstats
path: root/community/virtualbox-guest-additions/virtualbox-guest-additions.initd
blob: e43092f722c4af27ac58a4762cfdc0530cf33197 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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 $?
}