diff options
Diffstat (limited to 'app-emulation/spice-vdagent/files/spice-vdagent.initd-2')
-rw-r--r-- | app-emulation/spice-vdagent/files/spice-vdagent.initd-2 | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/app-emulation/spice-vdagent/files/spice-vdagent.initd-2 b/app-emulation/spice-vdagent/files/spice-vdagent.initd-2 new file mode 100644 index 000000000000..acb4e8cb987d --- /dev/null +++ b/app-emulation/spice-vdagent/files/spice-vdagent.initd-2 @@ -0,0 +1,61 @@ +#!/sbin/runscript +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/spice-vdagent/files/spice-vdagent.initd-2,v 1.1 2012/07/08 03:20:31 cardoe Exp $ + +depend() { + after dbus +} + +PIDFILE="/var/run/spice-vdagentd/spice-vdagentd.pid" + +start() { + PORT="${PORT:-/dev/virtio-ports/com.redhat.spice.0}" + DEVICE="${DEVICE:-/dev/uinput}" + + ebegin "Checking for required modules and devices" + + if [[ ! -d /sys/module/uinput ]]; then + modprobe -q uinput + fi + + if [[ ! -d /sys/module/uinput ]]; then + eerror "Module 'uinput' not loaded or not enabled in the kernel" + eend 1 + return 1 + fi + + if [[ ! -c "${PORT}" ]] ; then + eerror "Required virtio port does not exist. Make sure you" + eerror "started the virtual machine with appropriate parameters." + eend 1 + return 1 + fi + eend 0 + + if [[ ! -c ${DEVICE} && -c /dev/input/uinput ]]; then + DEVICE=/dev/input/uinput + fi + + # recreate the directory since /var/run may reside on a ramdisk + mkdir -p /var/run/spice-vdagentd + + # cleanup stalled socket + rm -f /var/run/spice-vdagentd/spice-vdagent-sock + + ebegin "Starting spice VD agent daemon" + start-stop-daemon \ + --start \ + --pidfile "${PIDFILE}" \ + --exec /usr/sbin/spice-vdagentd \ + -- -u "${DEVICE}" ${SPICE_VDAGENT_ARGS} + eend $? +} + +stop() { + ebegin "Stopping spice VD agent daemon" + start-stop-daemon \ + --stop \ + --pidfile "${PIDFILE}" + eend $? +} |