smoverlay/app-emulation/vmware-workstation/contrib/vmware-workstation-0-variou...

96 lines
3.9 KiB
Diff
Raw Normal View History

Date: Tue Jan 1 04:50:30 2019 -0800
vmware-workstation: crude vmware-installer fixing attempt
Just enough to get the various automation things to actually
work in the client, on my box. No idea if this is maintainable
or what... feels gross since I have no idea how any of this crap
actually works.
from Arch.
Probably totally broken without vendored libs. Not upstream ready.
also, needs bin/vmrun first in ${PATH}:
#!/bin/bash
tree=/opt/vmware
stutter=vmware/lib
libstutter() {
echo "lib${1}.so.1.0.2"
}
libpath() {
echo "${tree}/${stutter}/${stutter}/$(libstutter "${1}")"
}
export LD_LIBRARY_PATH="$(libpath ssl):$(libpath crypto)${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}"
exec /opt/vmware/bin/vmrun "$@"
Maybe something like that needs to go in place of /opt/vmware/bin/vmrun?
---
.../vmware-workstation/files/vmware-server-15.0.rc | 6 +++++-
.../vmware-workstation-15.0.2.10952284-r2.ebuild | 19 ++++++++++++++++---
2 files changed, 21 insertions(+), 4 deletions(-)
diff --git a/app-emulation/vmware-workstation/files/vmware-server-15.0.rc b/app-emulation/vmware-workstation/files/vmware-server-15.0.rc
index 8f9b7dd..20b6b80 100644
--- a/app-emulation/vmware-workstation/files/vmware-server-15.0.rc
+++ b/app-emulation/vmware-workstation/files/vmware-server-15.0.rc
@@ -47,6 +47,10 @@ stop() {
--pidfile /var/run/vmware/vmware-hostd.PID
eend $?
ebegin Stopping VMware Authentication Daemon
- killall --wait vmware-authdlauncher
+ local needkill=1
+ killall -0 vmware-authdlauncher &>/dev/null || needkill=0
+ if [[ needkill -eq 1 ]]; then
+ kill -HUP --wait $(pidof vmware-authdlauncher)
+ fi
eend $?
}
diff --git a/app-emulation/vmware-workstation/vmware-workstation-15.0.2.10952284-r2.ebuild b/app-emulation/vmware-workstation/vmware-workstation-15.0.2.10952284-r2.ebuild
index c279020..ceb328b 100644
--- a/app-emulation/vmware-workstation/vmware-workstation-15.0.2.10952284-r2.ebuild
+++ b/app-emulation/vmware-workstation/vmware-workstation-15.0.2.10952284-r2.ebuild
@@ -346,10 +346,22 @@ src_install() {
rm -rf "${D}${VM_INSTALL_DIR}"/lib/vmware/*.so
# install the installer
- insinto "${VM_INSTALL_DIR}"/lib/vmware-installer/$vmware_installer_version
- doins vmware-installer/{vmis,vmis-launcher,vmware-installer,vmware-installer.py}
insinto /etc/vmware-installer
doins vmware-installer/bootstrap
+ sed -e "s|@@VERSION@@|${vmware_installer_version}|" \
+ -e "s|@@VMWARE_INSTALLER@@|/opt/vmware/lib/vmware-installer/${vmware_installer_version}|" \
+ -i "${D%/}"/etc/vmware-installer/bootstrap || die
+
+ exeinto "${VM_INSTALL_DIR}"/lib/vmware-installer/${vmware_installer_version}
+ doexe vmware-installer/{vmware-installer,vmis-launcher}
+
+ insinto "${VM_INSTALL_DIR}"/lib/vmware-installer/${vmware_installer_version}
+ doins vmware-installer/vmware-installer.py
+ doins -r vmware-installer/{artwork,.installer,vmis}
+ if use bundled-libs ; then
+ doins -r vmware-installer/{python,sopython}
+ doins -r vmware-installer/lib
+ fi
# workaround for hardcoded search paths needed during shared objects loading
if ! use bundled-libs ; then
@@ -382,7 +394,7 @@ src_install() {
doexe */vmware-config
# pam
- pamd_mimic_system vmware-authd auth account
+ pamd_mimic_system vmware-authd auth account password session
# fuse
insinto /etc/modprobe.d
@@ -471,6 +483,7 @@ src_install() {
dosym "${VM_INSTALL_DIR}"/lib/vmware/bin/vmplayer "${VM_INSTALL_DIR}"/bin/vmplayer
dosym "${VM_INSTALL_DIR}"/lib/vmware/bin/vmware "${VM_INSTALL_DIR}"/bin/vmware
dosym "${VM_INSTALL_DIR}"/lib/vmware/icu /etc/vmware/icu
+ dosym "${VM_INSTALL_DIR}"/lib/vmware-installer/${vmware_installer_version}/vmware-installer "${VM_INSTALL_DIR}"/bin/vmware-installer
# fix permissions
fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/bin/{appLoader,fusermount,mkisofs,vmware-remotemks}