| #!/sbin/openrc-run |
| # Copyright 1999-2013 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| pidfile="/run/vmtoolsd.pid" |
| command="/usr/bin/vmtoolsd" |
| command_args="-b ${pidfile}" |
| |
| vmblockmntpt="/proc/fs/vmblock/mountPoint" |
| vmblockfusemntpt="/run/vmblock-fuse" |
| |
| depend() { |
| before checkfs fsck net X |
| } |
| |
| start_vmblock() { |
| checkpath -d -m 1777 /tmp/VMwareDnD |
| if command -v vmware-vmblock-fuse > /dev/null; then |
| modprobe fuse > /dev/null 2>&1 |
| checkpath -d "${vmblockfusemntpt}" |
| ebegin "Mounting vmblock-fuse" |
| vmware-vmblock-fuse \ |
| -o subtype=vmware-vmblock,default_permissions,allow_other \ |
| "${vmblockfusemntpt}" |
| eend $? |
| else |
| modprobe vmblock > /dev/null 2>&1 |
| checkpath -d "${vmblockmntpt}" |
| ebegin "Mounting vmblock" |
| mount -t vmblock vmblock "${vmblockmntpt}" |
| eend $? |
| fi |
| } |
| |
| stop_vmblock() { |
| if [ -d "${vmblockfusemntpt}" ]; then |
| ebegin "Unmounting vmblock-fuse" |
| umount "${vmblockfusemntpt}" |
| eend $? |
| else |
| ebegin "Unmounting vmblock" |
| umount "${vmblockmntpt}" |
| eend $? |
| fi |
| } |
| |
| start_pre() { |
| if [ x"${VM_DRAG_AND_DROP}" = xyes ]; then |
| start_vmblock |
| fi |
| return 0 |
| } |
| |
| stop_post() { |
| if [ x"${VM_DRAG_AND_DROP}" = xyes ]; then |
| stop_vmblock |
| fi |
| return 0 |
| } |