#!/sbin/runscript # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/files/vmware-player.rc,v 1.5 2008/04/26 17:36:10 ikelos Exp $ depend() { need localmount use logger net hald after samba } vmware_prettify() { # Yea, the code is ugly but the output is pretty state=$1 waserror=0 msgtype=0 while read line do [ "${line}" = "" ] && continue if [ ${msgtype} -le 0 ] then if [ ${msgtype} -eq -1 ] then ewarn ${line} continue fi case ${line} in *:*) einfon ${line} echo eend 0 msgtype=1;; *) ewarn ${line} msgtype=-1 waserror=1;; esac continue fi # Strip out anything after the code message=`echo ${line} | sed -e "s/^\(.*\).*$/\1/"` einfon " ${message}" echo echo ${line} | grep -q done status=$? eend ${status} if [ ${status} -eq 0 ] then logger -p local0.err -t vmware-${state} "${line}" waserror=${status} fi done if [ "${msgtype}" = "-1" ] then eend 1 "VMware is not properly configured! See above." fi return ${waserror} } start() { test -x /etc/vmware/init.d/vmware || \ eend 1 "vmware init script not found. Aborting" || return 1 if modinfo vmblock > /dev/null 2>&1; then ebegin "Loading vmblock for drag and drop support" local result modprobe vmblock || eend 1 "Failed to load vmblock driver" test ! -e /tmp/VMwareDnD && mkdir /tmp/VMwareDnD chmod 1777 /tmp/VMwareDnD mount -t vmblock none /proc/fs/vmblock/mountPoint || eend 1 "Failed to mount the vmblock filesystem" eend 0 fi /etc/vmware/init.d/vmware start | vmware_prettify start return $? } stop() { umount /proc/fs/vmblock/mountPoint > /dev/null 2>&1 /etc/vmware/init.d/vmware stop | vmware_prettify stop return $? }