From 17ae80cb7927d3922a4379ec2cb88735015ff7f7 Mon Sep 17 00:00:00 2001 From: Vadim Kuznetsov Date: Sat, 3 Dec 2011 20:14:02 +0000 Subject: [PATCH] vmware desktop version bump Package-Manager: portage-2.1.10.39/cvs/Linux x86_64 --- app-emulation/vmware-modules/ChangeLog | 9 +- .../vmware-modules/files/264-jobserver.patch | 75 +++ .../files/264-makefile-include.patch | 65 +++ .../files/264-makefile-kernel-dir.patch | 80 +++ .../vmware-modules/files/264-netdevice.patch | 24 + .../vmware-modules-264.1.ebuild | 78 +++ app-emulation/vmware-player/ChangeLog | 8 +- .../vmware-player-4.0.1.528992-r1.ebuild | 246 +++++++++ app-emulation/vmware-tools/ChangeLog | 8 +- .../vmware-tools-8.8.1.528992.ebuild | 55 ++ app-emulation/vmware-vix/Manifest | 15 +- app-emulation/vmware-workstation/ChangeLog | 11 +- .../vmware-workstation/files/vmware-8.0.rc | 33 ++ .../files/vmware-server-8.0.rc | 55 ++ app-emulation/vmware-workstation/metadata.xml | 2 + .../vmware-workstation-6.5.5.328052.ebuild | 3 +- .../vmware-workstation-7.1.5.491717.ebuild | 3 +- .../vmware-workstation-8.0.1.528992.ebuild | 486 ++++++++++++++++++ 18 files changed, 1247 insertions(+), 9 deletions(-) create mode 100644 app-emulation/vmware-modules/files/264-jobserver.patch create mode 100644 app-emulation/vmware-modules/files/264-makefile-include.patch create mode 100644 app-emulation/vmware-modules/files/264-makefile-kernel-dir.patch create mode 100644 app-emulation/vmware-modules/files/264-netdevice.patch create mode 100644 app-emulation/vmware-modules/vmware-modules-264.1.ebuild create mode 100644 app-emulation/vmware-player/vmware-player-4.0.1.528992-r1.ebuild create mode 100644 app-emulation/vmware-tools/vmware-tools-8.8.1.528992.ebuild create mode 100644 app-emulation/vmware-workstation/files/vmware-8.0.rc create mode 100644 app-emulation/vmware-workstation/files/vmware-server-8.0.rc create mode 100644 app-emulation/vmware-workstation/vmware-workstation-8.0.1.528992.ebuild diff --git a/app-emulation/vmware-modules/ChangeLog b/app-emulation/vmware-modules/ChangeLog index 975d6e9657a1..3231f39c6344 100644 --- a/app-emulation/vmware-modules/ChangeLog +++ b/app-emulation/vmware-modules/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-emulation/vmware-modules # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.82 2011/10/19 17:17:11 vadimk Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.83 2011/12/03 20:04:15 vadimk Exp $ + +*vmware-modules-264.1 (03 Dec 2011) + + 03 Dec 2011; Vadim Kuznetsov +files/264-jobserver.patch, + +files/264-makefile-include.patch, +files/264-netdevice.patch, + +vmware-modules-264.1.ebuild, +files/264-makefile-kernel-dir.patch: + vmware desktop version bump 19 Oct 2011; Vadim Kuznetsov -files/208-sema.patch, -files/208-sk_sleep.patch, -files/208-unlocked_ioctl.patch, diff --git a/app-emulation/vmware-modules/files/264-jobserver.patch b/app-emulation/vmware-modules/files/264-jobserver.patch new file mode 100644 index 000000000000..59a6ccca1da0 --- /dev/null +++ b/app-emulation/vmware-modules/files/264-jobserver.patch @@ -0,0 +1,75 @@ +diff -ru a/work/vmblock-only/Makefile b/work/vmblock-only/Makefile +--- a/work/vmblock-only/Makefile 2011-01-22 08:59:15.907152002 -0500 ++++ b/work/vmblock-only/Makefile 2011-01-22 09:13:55.894938002 -0500 +@@ -123,9 +123,9 @@ + postbuild:: ; + + $(DRIVER_KO): prebuild +- make -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) modules +- make -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) postbuild + endif + +diff -ru a/work/vmci-only/Makefile b/work/vmci-only/Makefile +--- a/work/vmci-only/Makefile 2011-01-22 08:59:15.907152002 -0500 ++++ b/work/vmci-only/Makefile 2011-01-22 09:13:55.898936002 -0500 +@@ -123,9 +123,9 @@ + postbuild:: ; + + $(DRIVER_KO): prebuild +- make -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) modules +- make -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) postbuild + endif + +diff -ru a/work/vmmon-only/Makefile b/work/vmmon-only/Makefile +--- a/work/vmmon-only/Makefile 2011-01-22 08:59:15.907152002 -0500 ++++ b/work/vmmon-only/Makefile 2011-01-22 09:13:55.894938002 -0500 +@@ -123,9 +123,9 @@ + postbuild:: ; + + $(DRIVER_KO): prebuild +- make -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) modules +- make -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) postbuild + endif + +diff -ru a/work/vmnet-only/Makefile b/work/vmnet-only/Makefile +--- a/work/vmnet-only/Makefile 2011-01-22 08:59:15.911150002 -0500 ++++ b/work/vmnet-only/Makefile 2011-01-22 09:13:55.898936002 -0500 +@@ -123,9 +123,9 @@ + postbuild:: ; + + $(DRIVER_KO): prebuild +- make -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) modules +- make -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) postbuild + endif + +diff -ru a/work/vsock-only/Makefile b/work/vsock-only/Makefile +--- a/work/vsock-only/Makefile 2011-01-22 08:59:15.911150002 -0500 ++++ b/work/vsock-only/Makefile 2011-01-22 09:13:55.894938002 -0500 +@@ -123,9 +123,9 @@ + postbuild:: ; + + $(DRIVER_KO): prebuild +- make -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) modules +- make -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ ++ $(MAKE) -C $$PWD SRCROOT=$$PWD/$(SRCROOT) \ + MODULEBUILDDIR=$(MODULEBUILDDIR) postbuild + endif + diff --git a/app-emulation/vmware-modules/files/264-makefile-include.patch b/app-emulation/vmware-modules/files/264-makefile-include.patch new file mode 100644 index 000000000000..39c300030805 --- /dev/null +++ b/app-emulation/vmware-modules/files/264-makefile-include.patch @@ -0,0 +1,65 @@ +diff --git a/vmblock-only/Makefile.kernel b/vmblock-only/Makefile.kernel +index ab7a727..e3ec9d2 100644 +--- a/vmblock-only/Makefile.kernel ++++ b/vmblock-only/Makefile.kernel +@@ -19,7 +19,7 @@ + + INCLUDE += -I$(SRCROOT)/include + +-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) ++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE) + + EXTRA_CFLAGS += $(call vm_check_build, $(AUTOCONF_DIR)/cachecreate.c, -DVMW_KMEMCR_HAS_DTOR, ) + EXTRA_CFLAGS += $(call vm_check_build, $(AUTOCONF_DIR)/cachector.c, -DVMW_KMEMCR_CTOR_HAS_3_ARGS, ) +diff --git a/vmci-only/Makefile.kernel b/vmci-only/Makefile.kernel +index ba343ee..861ea83 100644 +--- a/vmci-only/Makefile.kernel ++++ b/vmci-only/Makefile.kernel +@@ -21,7 +21,7 @@ CC_OPTS += -DVMCI + + INCLUDE += -I$(SRCROOT)/shared -I$(SRCROOT)/common -I$(SRCROOT)/linux + +-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) ++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE) + + obj-m += $(DRIVER).o + +diff --git a/vmmon-only/Makefile.kernel b/vmmon-only/Makefile.kernel +index 8770d1d..c4746c3 100644 +--- a/vmmon-only/Makefile.kernel ++++ b/vmmon-only/Makefile.kernel +@@ -22,7 +22,7 @@ CC_OPTS += -DVMMON -DVMCORE + INCLUDE := -I$(SRCROOT)/include -I$(SRCROOT)/common -I$(SRCROOT)/linux \ + -I$(SRCROOT)/vmcore + +-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) ++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE) + + EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/autoconf/smpcall.c, -DVMW_HAVE_SMP_CALL_3ARG, ) + +diff --git a/vmnet-only/Makefile.kernel b/vmnet-only/Makefile.kernel +index d1e3133..665d428 100644 +--- a/vmnet-only/Makefile.kernel ++++ b/vmnet-only/Makefile.kernel +@@ -19,7 +19,7 @@ + + INCLUDE := -I$(SRCROOT) + +-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) ++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE) + EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/netdev_has_net.c,-DVMW_NETDEV_HAS_NET, ) + EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/netdev_has_dev_net.c,-DVMW_NETDEV_HAS_DEV_NET, ) + EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/nfhook_uses_skb.c,-DVMW_NFHOOK_USES_SKB, ) +diff --git a/vsock-only/Makefile.kernel b/vsock-only/Makefile.kernel +index b4629ee..264b8cb 100644 +--- a/vsock-only/Makefile.kernel ++++ b/vsock-only/Makefile.kernel +@@ -25,7 +25,7 @@ INCLUDE += -I$(SRCROOT)/include + INCLUDE += -I$(SRCROOT)/linux + INCLUDE += -I$(SRCROOT)/common + +-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) ++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE) + EXTRA_CFLAGS += $(call vm_check_build, $(AUTOCONF_DIR)/netcreate_num_params.c, -DVMW_NETCREATE_KERNARG, ) + + diff --git a/app-emulation/vmware-modules/files/264-makefile-kernel-dir.patch b/app-emulation/vmware-modules/files/264-makefile-kernel-dir.patch new file mode 100644 index 000000000000..d4bd6d12fed0 --- /dev/null +++ b/app-emulation/vmware-modules/files/264-makefile-kernel-dir.patch @@ -0,0 +1,80 @@ +diff --git a/work/vmblock-only/Makefile b/work/vmblock-only/Makefile +index 0bd0e74..27c3ede 100644 +--- a/work/vmblock-only/Makefile ++++ b/work/vmblock-only/Makefile +@@ -46,9 +46,9 @@ endif + VM_UNAME = $(shell uname -r) + + # Header directory for the running kernel +-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include ++HEADER_DIR = $(KERNEL_DIR) + +-BUILD_DIR = $(HEADER_DIR)/.. ++BUILD_DIR = $(KBUILD_OUTPUT) + + DRIVER := vmblock + PRODUCT := tools +diff --git a/work/vmci-only/Makefile b/work/vmci-only/Makefile +index 7babb8a..fbc5878 100644 +--- a/work/vmci-only/Makefile ++++ b/work/vmci-only/Makefile +@@ -46,9 +46,9 @@ endif + VM_UNAME = $(shell uname -r) + + # Header directory for the running kernel +-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include ++HEADER_DIR = $(KERNEL_DIR) + +-BUILD_DIR = $(HEADER_DIR)/.. ++BUILD_DIR = $(KBUILD_OUTPUT) + + DRIVER := vmci + PRODUCT := @@PRODUCT@@ +diff --git a/work/vmmon-only/Makefile b/work/vmmon-only/Makefile +index 4b4eb3e..1bb35ef 100644 +--- a/work/vmmon-only/Makefile ++++ b/work/vmmon-only/Makefile +@@ -46,9 +46,9 @@ endif + VM_UNAME = $(shell uname -r) + + # Header directory for the running kernel +-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include ++HEADER_DIR = $(KERNEL_DIR) + +-BUILD_DIR = $(HEADER_DIR)/.. ++BUILD_DIR = $(KBUILD_OUTPUT) + + DRIVER := vmmon + PRODUCT := @@PRODUCT@@ +diff --git a/work/vmnet-only/Makefile b/work/vmnet-only/Makefile +index 06856e7..fd53bf8 100644 +--- a/work/vmnet-only/Makefile ++++ b/work/vmnet-only/Makefile +@@ -46,9 +46,9 @@ endif + VM_UNAME = $(shell uname -r) + + # Header directory for the running kernel +-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include ++HEADER_DIR = $(KERNEL_DIR) + +-BUILD_DIR = $(HEADER_DIR)/.. ++BUILD_DIR = $(KBUILD_OUTPUT) + + DRIVER := vmnet + PRODUCT := @@PRODUCT@@ +diff --git a/work/vsock-only/Makefile b/work/vsock-only/Makefile +index e02adb0..210e502 100644 +--- a/work/vsock-only/Makefile ++++ b/work/vsock-only/Makefile +@@ -46,9 +46,9 @@ endif + VM_UNAME = $(shell uname -r) + + # Header directory for the running kernel +-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include ++HEADER_DIR = $(KERNEL_DIR) + +-BUILD_DIR = $(HEADER_DIR)/.. ++BUILD_DIR = $(KBUILD_OUTPUT) + + DRIVER := vsock + PRODUCT := ws diff --git a/app-emulation/vmware-modules/files/264-netdevice.patch b/app-emulation/vmware-modules/files/264-netdevice.patch new file mode 100644 index 000000000000..35231a3205e3 --- /dev/null +++ b/app-emulation/vmware-modules/files/264-netdevice.patch @@ -0,0 +1,24 @@ +diff --git a/vmnet-only/compat_netdevice.h b/vmnet-only/compat_netdevice.h +index 7a56304..9ff4548 100644 +--- a/vmnet-only/compat_netdevice.h ++++ b/vmnet-only/compat_netdevice.h +@@ -47,6 +47,19 @@ + # define net_device device + #endif + ++/* it looks like these have been removed from the kernel 3.1 ++ * probably because the "transition" is considered complete. ++ * so to keep this source compatible we just redefine them like they were ++ * previously ++ */ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 1, 0) ++#define HAVE_ALLOC_NETDEV /* feature macro: alloc_xxxdev ++ functions are available. */ ++#define HAVE_FREE_NETDEV /* free_netdev() */ ++#define HAVE_NETDEV_PRIV /* netdev_priv() */ ++#define HAVE_NETIF_QUEUE ++#define HAVE_NET_DEVICE_OPS ++#endif + + /* + * SET_MODULE_OWNER appeared sometime during 2.3.x. It was setting diff --git a/app-emulation/vmware-modules/vmware-modules-264.1.ebuild b/app-emulation/vmware-modules/vmware-modules-264.1.ebuild new file mode 100644 index 000000000000..e09b4adec72b --- /dev/null +++ b/app-emulation/vmware-modules/vmware-modules-264.1.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-264.1.ebuild,v 1.1 2011/12/03 20:04:15 vadimk Exp $ + +EAPI="2" + +inherit eutils flag-o-matic linux-info linux-mod versionator + +PV_MAJOR=$(get_major_version) +PV_MINOR=$(get_version_component_range 2) + +DESCRIPTION="VMware kernel modules" +HOMEPAGE="http://www.vmware.com/" + +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="" +DEPEND="${RDEPEND} + || ( =app-emulation/vmware-player-4.0.${PV_MINOR}* + =app-emulation/vmware-workstation-8.0.${PV_MINOR}* )" + +S=${WORKDIR} + +pkg_setup() { + CONFIG_CHECK="~HIGH_RES_TIMERS" + if kernel_is ge 2 6 37 && kernel_is lt 2 6 39; then + CONFIG_CHECK="${CONFIG_CHECK} BKL" + fi + + linux-info_pkg_setup + + linux-mod_pkg_setup + + VMWARE_GROUP=${VMWARE_GROUP:-vmware} + + VMWARE_MODULE_LIST="vmblock vmci vmmon vmnet vsock" + VMWARE_MOD_DIR="${PN}-${PVR}" + + BUILD_TARGETS="auto-build KERNEL_DIR=${KERNEL_DIR} KBUILD_OUTPUT=${KV_OUT_DIR}" + + enewgroup "${VMWARE_GROUP}" + filter-flags -mfpmath=sse + + for mod in ${VMWARE_MODULE_LIST}; do + MODULE_NAMES="${MODULE_NAMES} ${mod}(misc:${S}/${mod}-only)" + done +} + +src_unpack() { + cd "${S}" + for mod in ${VMWARE_MODULE_LIST}; do + tar -xf /opt/vmware/lib/vmware/modules/source/${mod}.tar + done +} + +src_prepare() { + epatch "${FILESDIR}/${PV_MAJOR}-makefile-kernel-dir.patch" + epatch "${FILESDIR}/${PV_MAJOR}-makefile-include.patch" + epatch "${FILESDIR}/${PV_MAJOR}-jobserver.patch" + epatch "${FILESDIR}/${PV_MAJOR}-netdevice.patch" +} + +src_install() { + linux-mod_src_install + local udevrules="${T}/60-vmware.rules" + cat > "${udevrules}" <<-EOF + KERNEL=="vmci", GROUP="vmware", MODE=660 + KERNEL=="vmmon", GROUP="vmware", MODE=660 + KERNEL=="vsock", GROUP="vmware", MODE=660 + EOF + insinto /etc/udev/rules.d/ + doins "${udevrules}" +} diff --git a/app-emulation/vmware-player/ChangeLog b/app-emulation/vmware-player/ChangeLog index f5d35e1fdf95..3cc46176237e 100644 --- a/app-emulation/vmware-player/ChangeLog +++ b/app-emulation/vmware-player/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/vmware-player # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/ChangeLog,v 1.98 2011/11/22 18:00:27 vadimk Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/ChangeLog,v 1.99 2011/12/03 20:07:45 vadimk Exp $ + +*vmware-player-4.0.1.528992-r1 (03 Dec 2011) + + 03 Dec 2011; Vadim Kuznetsov + +vmware-player-4.0.1.528992-r1.ebuild: + vmware desktop version bump 22 Nov 2011; Vadim Kuznetsov vmware-player-2.5.5.328052.ebuild, vmware-player-3.1.5.491717.ebuild, diff --git a/app-emulation/vmware-player/vmware-player-4.0.1.528992-r1.ebuild b/app-emulation/vmware-player/vmware-player-4.0.1.528992-r1.ebuild new file mode 100644 index 000000000000..21d3cbd5a2d1 --- /dev/null +++ b/app-emulation/vmware-player/vmware-player-4.0.1.528992-r1.ebuild @@ -0,0 +1,246 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/vmware-player-4.0.1.528992-r1.ebuild,v 1.1 2011/12/03 20:07:45 vadimk Exp $ + +EAPI="4" + +inherit eutils versionator fdo-mime gnome2-utils vmware-bundle + +MY_PN="VMware-Player" +MY_PV="$(replace_version_separator 3 - $PV)" +MY_P="${MY_PN}-${MY_PV}" + +DESCRIPTION="Emulate a complete PC on your PC without the usual performance overhead of most emulators" +HOMEPAGE="http://www.vmware.com/products/player/" +SRC_URI=" + x86? ( ${MY_P}.i386.bundle ) + amd64? ( ${MY_P}.x86_64.bundle ) + " + +LICENSE="vmware" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +IUSE="cups doc +vmware-tools" +RESTRICT="binchecks fetch strip" + +# vmware-workstation should not use virtual/libc as this is a +# precompiled binary package thats linked to glibc. +RDEPEND="dev-cpp/cairomm + dev-cpp/glibmm:2 + dev-cpp/gtkmm:2.4 + dev-cpp/libgnomecanvasmm:2.6 + dev-cpp/libsexymm + dev-cpp/pangomm:1.4 + dev-libs/atk + dev-libs/glib:2 + dev-libs/libaio + dev-libs/libsigc++ + dev-libs/libxml2 + =dev-libs/openssl-0.9.8* + dev-libs/xmlrpc-c + gnome-base/libgnomecanvas + gnome-base/libgtop:2 + gnome-base/librsvg:2 + gnome-base/orbit + media-libs/fontconfig + media-libs/freetype + media-libs/libart_lgpl + =media-libs/libpng-1.2* + net-misc/curl + cups? ( net-print/cups ) + sys-devel/gcc + sys-fs/fuse + sys-libs/glibc + sys-libs/zlib + x11-libs/cairo + x11-libs/gtk+:2 + x11-libs/libgksu + x11-libs/libICE + x11-libs/libsexy + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXau + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXft + x11-libs/libXi + x11-libs/libXinerama + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/pango + x11-libs/startup-notification + !app-emulation/vmware-workstation" +PDEPEND="~app-emulation/vmware-modules-264.1 + vmware-tools? ( app-emulation/vmware-tools )" + +S=${WORKDIR} +VM_INSTALL_DIR="/opt/vmware" + +pkg_nofetch() { + local bundle + + if use x86; then + bundle="${MY_P}.i386.bundle" + elif use amd64; then + bundle="${MY_P}.x86_64.bundle" + fi + + einfo "Please download ${bundle}" + einfo "from ${HOMEPAGE}" + einfo "and place it in ${DISTDIR}" +} + +src_unpack() { + local component ; for component in \ + vmware-player \ + vmware-player-app \ + vmware-vmx \ + vmware-usbarbitrator \ + vmware-network-editor \ + vmware-player-setup + #vmware-ovftool + do + vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" "${component}" "${S}" + done +} + +src_prepare() { + rm -f bin/vmware-modconfig + rm -rf lib/modules/binary +} + +clean_bundled_libs() { + ebegin 'Removing superfluous libraries' + # exclude OpenSSL from unbundling until the AES-NI patch gets into the tree + # see http://forums.gentoo.org/viewtopic-t-835867.html + # must use shipped libgcr.so.0 or else "undefined symbol: gcr_certificate_widget_new" + ldconfig -p | sed 's:^\s\+\([^(]*[^( ]\).*=> \(/.*\)$:\1 \2:g;t;d' | fgrep -v 'libcrypto.so.0.9.8 +libssl.so.0.9.8 +libgcr.so.0' | while read -r libname libpath ; do + dosym "${libpath}" "${VM_INSTALL_DIR}/lib/vmware/lib/${libname}/${libname}" + done + eend +} + +src_install() { + local major_minor_revision=$(get_version_component_range 1-3 "${PV}") + local build=$(get_version_component_range 4 "${PV}") + + # install the binaries + into "${VM_INSTALL_DIR}" + dobin bin/* || die "failed to install bin" + + # install the libraries + insinto "${VM_INSTALL_DIR}"/lib/vmware + doins -r lib/* + + # install the ancillaries + insinto /usr + doins -r share + + if use cups; then + exeinto $(cups-config --serverbin)/filter + doexe extras/thnucups + + insinto /etc/cups + doins -r etc/cups/* + fi + + # install documentation + if use doc; then + dodoc doc/* + fi + + exeinto "${VM_INSTALL_DIR}"/lib/vmware/setup + doexe vmware-config + + # create symlinks for the various tools + local tool ; for tool in thnuclnt vmplayer{,-daemon} \ + vmware-{acetool,unity-helper,modconfig{,-console},gksu,fuseUI} ; do + dosym appLoader "${VM_INSTALL_DIR}"/lib/vmware/bin/"${tool}" + done + dosym "${VM_INSTALL_DIR}"/lib/vmware/bin/vmplayer "${VM_INSTALL_DIR}"/bin/vmplayer + dosym "${VM_INSTALL_DIR}"/lib/vmware/icu /etc/vmware/icu + + # fix up permissions + fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/{bin/*,lib/wrapper-gtk24.sh,lib/libgksu2.so.0/gksu-run-helper} + fperms 4711 "${VM_INSTALL_DIR}"/lib/vmware/bin/vmware-vmx* + + # create the environment + local envd="${T}/90vmware" + cat > "${envd}" <<-EOF + PATH='${VM_INSTALL_DIR}/bin' + ROOTPATH='${VM_INSTALL_DIR}/bin' + EOF + doenvd "${envd}" || die + + # create the configuration + dodir /etc/vmware || die + + cat > "${D}"/etc/vmware/bootstrap <<-EOF + BINDIR='${VM_INSTALL_DIR}/bin' + LIBDIR='${VM_INSTALL_DIR}/lib' + EOF + + cat > "${D}"/etc/vmware/config <<-EOF + bindir = "${VM_INSTALL_DIR}/bin" + libdir = "${VM_INSTALL_DIR}/lib/vmware" + initscriptdir = "/etc/init.d" + authd.fullpath = "${VM_INSTALL_DIR}/sbin/vmware-authd" + gksu.rootMethod = "su" + VMCI_CONFED = "yes" + VMBLOCK_CONFED = "yes" + VSOCK_CONFED = "yes" + NETWORKING = "yes" + player.product.version = "${major_minor_revision}" + product.buildNumber = "${build}" + EOF + + # install the init.d script + local initscript="${T}/vmware.rc" + + sed -e "s:@@BINDIR@@:${VM_INSTALL_DIR}/bin:g" \ + "${FILESDIR}/vmware-3.0.rc" > "${initscript}" || die + newinitd "${initscript}" vmware || die + + # fill in variable placeholders + sed -e "s:@@LIBCONF_DIR@@:${VM_INSTALL_DIR}/lib/vmware/libconf:g" \ + -i "${D}${VM_INSTALL_DIR}"/lib/vmware/libconf/etc/{gtk-2.0/{gdk-pixbuf.loaders,gtk.immodules},pango/pango{.modules,rc}} || die + sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmplayer:g" \ + -i "${D}/usr/share/applications/${PN}.desktop" || die +} + +pkg_config() { + "${VM_INSTALL_DIR}"/bin/vmware-networks --postinstall ${PN},old,new +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + fdo-mime_desktop_database_update + gnome2_icon_cache_update + + ewarn "/etc/env.d was updated. Please run:" + ewarn "env-update && source /etc/profile" + ewarn "" + ewarn "Before you can use vmware-player, you must configure a default network setup." + ewarn "You can do this by running 'emerge --config ${PN}'." +} + +pkg_prerm() { + einfo "Stopping ${PN} for safe unmerge" + /etc/init.d/vmware stop +} + +pkg_postrm() { + fdo-mime_desktop_database_update + gnome2_icon_cache_update +} diff --git a/app-emulation/vmware-tools/ChangeLog b/app-emulation/vmware-tools/ChangeLog index ade1e45393dc..42bed3544462 100644 --- a/app-emulation/vmware-tools/ChangeLog +++ b/app-emulation/vmware-tools/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/vmware-tools # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-tools/ChangeLog,v 1.6 2011/11/22 18:06:30 vadimk Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-tools/ChangeLog,v 1.7 2011/12/03 20:09:16 vadimk Exp $ + +*vmware-tools-8.8.1.528992 (03 Dec 2011) + + 03 Dec 2011; Vadim Kuznetsov + +vmware-tools-8.8.1.528992.ebuild: + vmware desktop version bump 22 Nov 2011; Vadim Kuznetsov metadata.xml: updated co-maintainer email. diff --git a/app-emulation/vmware-tools/vmware-tools-8.8.1.528992.ebuild b/app-emulation/vmware-tools/vmware-tools-8.8.1.528992.ebuild new file mode 100644 index 000000000000..daf950d90e88 --- /dev/null +++ b/app-emulation/vmware-tools/vmware-tools-8.8.1.528992.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-tools/vmware-tools-8.8.1.528992.ebuild,v 1.1 2011/12/03 20:09:16 vadimk Exp $ + +inherit versionator vmware-bundle + +MY_PV="$(replace_version_separator 3 - $PV)" +BASE_URI="http://softwareupdate.vmware.com/cds/vmw-desktop/player/4.0.$(get_version_component_range 3)/$(get_version_component_range 4)/linux/packages/" + +DESCRIPTION="VMware Tools for guest operating systems" +HOMEPAGE="http://www.vmware.com/products/player/" + +LICENSE="vmware" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +RESTRICT="mirror" +IUSE="" + +DEPEND="! + vmware-workstation-6.5.5.328052.ebuild, + vmware-workstation-7.1.5.491717.ebuild, + +vmware-workstation-8.0.1.528992.ebuild, +files/vmware-8.0.rc, + +files/vmware-server-8.0.rc, metadata.xml: + vmware desktop version bump 17 Oct 2011; Vadim Kuznetsov -vmware-workstation-7.1.4.385536.ebuild: diff --git a/app-emulation/vmware-workstation/files/vmware-8.0.rc b/app-emulation/vmware-workstation/files/vmware-8.0.rc new file mode 100644 index 000000000000..3152256e6f99 --- /dev/null +++ b/app-emulation/vmware-workstation/files/vmware-8.0.rc @@ -0,0 +1,33 @@ +#!/sbin/runscript +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation/files/vmware-8.0.rc,v 1.1 2011/12/03 20:14:02 vadimk Exp $ + +depend() { + need localmount + use net +} + +start() { + ebegin Starting VMware USB Arbitrator + #start-stop-daemon --start --exec @@BINDIR@@/vmware-usbarbitrator + @@BINDIR@@/vmware-usbarbitrator + eend $? + ebegin Starting VMware services + modprobe -a vmmon vmci vsock vmblock vmnet + eend $? + @@BINDIR@@/vmware-networks --start + eend $? +} + +stop() { + ebegin Stopping VMware USB Arbitrator + #start-stop-daemon --stop --exec @@BINDIR@@/vmware-usbarbitrator + killall --wait @@BINDIR@@/vmware-usbarbitrator + eend $? + @@BINDIR@@/vmware-networks --stop + eend $? + ebegin Stopping VMware services + modprobe -r vsock vmci vmmon vmblock vmnet + eend $? +} diff --git a/app-emulation/vmware-workstation/files/vmware-server-8.0.rc b/app-emulation/vmware-workstation/files/vmware-server-8.0.rc new file mode 100644 index 000000000000..b8512fad3b22 --- /dev/null +++ b/app-emulation/vmware-workstation/files/vmware-server-8.0.rc @@ -0,0 +1,55 @@ +#!/sbin/runscript +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation/files/vmware-server-8.0.rc,v 1.1 2011/12/03 20:14:02 vadimk Exp $ + +depend() { + need localmount vmware + use net +} + +checkconfig() { + # Check if certificates exist. If not, we need to generate them, ala sshd. + if [ ! -e @@ETCDIR@@/ssl/rui.key -o ! -e @@ETCDIR@@/ssl/rui.crt ]; then + mkdir -p @@ETCDIR@@/ssl + openssl req -x509 -days 365 -newkey rsa:2048 -keyout @@ETCDIR@@/ssl/rui.key -out @@ETCDIR@@/ssl/rui.crt -config @@ETCDIR@@/ssl/hostd.ssl.config + chmod -R 600 @@ETCDIR@@/ssl + fi +} + +start() { + checkconfig + + ebegin Starting VMware Authentication Daemon + start-stop-daemon --start \ + --exec @@PREFIX@@/sbin/vmware-authdlauncher + eend $? + ebegin Starting VMware Workstation Server + start-stop-daemon --start \ + --pidfile /var/run/vmware/vmware-hostd.PID \ + --exec @@BINDIR@@/vmware-hostd \ + -- -a -d @@ETCDIR@@/hostd/config.xml + + eend $? +} + +stop() { + ebegin "Shutdown VMs in the AutoStart Sequence" + local HOHO_ADMIN="$(@@BINDIR@@/vmware-wssc-adminTool "@@ETCDIR@@/hostd/authorization.xml" 2>/dev/null)" + + if [ "x" != "x${HOHO_ADMIN}" ]; then + @@BINDIR@@/vmware-vim-cmd -U "${HOHO_ADMIN}" hostsvc/autostartmanager/autostop + fi + eend $? + + ebegin Stopping VMware Workstation Server + start-stop-daemon --stop \ + --pidfile /var/run/vmware/vmware-hostd.PID \ + --exec @@BINDIR@@/vmware-hostd + eend $? + ebegin Stopping VMware Authentication Daemon + #start-stop-daemon --stop \ + # --exec @@PREFIX@@/sbin/vmware-authdlauncher + killall @@PREFIX@@/sbin/vmware-authdlauncher + eend $? +} diff --git a/app-emulation/vmware-workstation/metadata.xml b/app-emulation/vmware-workstation/metadata.xml index 3927fced4416..2dc6f429c366 100644 --- a/app-emulation/vmware-workstation/metadata.xml +++ b/app-emulation/vmware-workstation/metadata.xml @@ -10,6 +10,8 @@ other operating systems in a virtual environment to run on top of Gentoo. + Install OVF tool. + Install VMware Workstation Server component. Install VIX. The VIX API allows you to write programs and scripts that automate virtual machine operations, and run programs or manipulate files within guest operating systems. diff --git a/app-emulation/vmware-workstation/vmware-workstation-6.5.5.328052.ebuild b/app-emulation/vmware-workstation/vmware-workstation-6.5.5.328052.ebuild index dad9e73c3c67..5ff51242ecbb 100644 --- a/app-emulation/vmware-workstation/vmware-workstation-6.5.5.328052.ebuild +++ b/app-emulation/vmware-workstation/vmware-workstation-6.5.5.328052.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation/vmware-workstation-6.5.5.328052.ebuild,v 1.4 2011/02/17 21:04:19 tomka Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation/vmware-workstation-6.5.5.328052.ebuild,v 1.5 2011/12/03 20:14:02 vadimk Exp $ EAPI="2" @@ -44,7 +44,6 @@ RDEPEND=" x11-libs/libXrandr x11-libs/libXtst !!app-emulation/vmware-player - !!app-emulation/vmware-server " S=${WORKDIR}/vmware-distrib diff --git a/app-emulation/vmware-workstation/vmware-workstation-7.1.5.491717.ebuild b/app-emulation/vmware-workstation/vmware-workstation-7.1.5.491717.ebuild index d8232c4b2d48..54ef11b49b64 100644 --- a/app-emulation/vmware-workstation/vmware-workstation-7.1.5.491717.ebuild +++ b/app-emulation/vmware-workstation/vmware-workstation-7.1.5.491717.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation/vmware-workstation-7.1.5.491717.ebuild,v 1.1 2011/10/08 18:03:32 vadimk Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation/vmware-workstation-7.1.5.491717.ebuild,v 1.2 2011/12/03 20:14:02 vadimk Exp $ EAPI="2" @@ -75,7 +75,6 @@ RDEPEND="dev-cpp/cairomm x11-libs/libXtst x11-libs/pango x11-libs/startup-notification - !app-emulation/vmware-server !app-emulation/vmware-player" PDEPEND="~app-emulation/vmware-modules-238.5 vmware-tools? ( app-emulation/vmware-tools )" diff --git a/app-emulation/vmware-workstation/vmware-workstation-8.0.1.528992.ebuild b/app-emulation/vmware-workstation/vmware-workstation-8.0.1.528992.ebuild new file mode 100644 index 000000000000..21b92f07bbdb --- /dev/null +++ b/app-emulation/vmware-workstation/vmware-workstation-8.0.1.528992.ebuild @@ -0,0 +1,486 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation/vmware-workstation-8.0.1.528992.ebuild,v 1.1 2011/12/03 20:14:02 vadimk Exp $ + +EAPI="4" + +inherit eutils versionator fdo-mime gnome2-utils pam vmware-bundle + +MY_PN="VMware-Workstation" +MY_PV="$(replace_version_separator 3 - $PV)" +MY_P="${MY_PN}-Full-${MY_PV}" + +DESCRIPTION="Emulate a complete PC on your PC without the usual performance overhead of most emulators" +HOMEPAGE="http://www.vmware.com/products/workstation/" +SRC_URI=" + x86? ( ${MY_P}.i386.bundle ) + amd64? ( ${MY_P}.x86_64.bundle ) + " + +LICENSE="vmware" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +IUSE="cups doc gnome kde ovftool server vix vmware-tools" +RESTRICT="binchecks fetch mirror strip" + +# vmware-workstation should not use virtual/libc as this is a +# precompiled binary package thats linked to glibc. +RDEPEND="dev-cpp/cairomm + dev-cpp/glibmm:2 + dev-cpp/gtkmm:2.4 + dev-cpp/libgnomecanvasmm + dev-cpp/libsexymm + dev-cpp/pangomm + dev-libs/atk + dev-libs/glib:2 + dev-libs/icu + dev-libs/expat + dev-libs/libaio + dev-libs/libsigc++ + dev-libs/libxml2 + =dev-libs/openssl-0.9.8* + dev-libs/xmlrpc-c + gnome-base/libgnomecanvas + gnome-base/libgtop:2 + gnome-base/librsvg:2 + gnome-base/orbit + media-libs/fontconfig + media-libs/freetype + media-libs/libart_lgpl + =media-libs/libpng-1.2* + media-libs/libpng + net-misc/curl + cups? ( net-print/cups ) + sys-devel/gcc + sys-fs/fuse + sys-libs/glibc + sys-libs/zlib + x11-libs/cairo + gnome? ( x11-libs/gksu ) + kde? ( kde-base/kdesu ) + x11-libs/gtk+:2 + x11-libs/libgksu + x11-libs/libICE + x11-libs/libsexy + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXau + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXft + x11-libs/libXi + x11-libs/libXinerama + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/pango + x11-libs/startup-notification + x11-themes/hicolor-icon-theme + !app-emulation/vmware-player" +PDEPEND="~app-emulation/vmware-modules-264.1 + vmware-tools? ( app-emulation/vmware-tools )" + +S=${WORKDIR} +VM_INSTALL_DIR="/opt/vmware" +VM_DATA_STORE_DIR="/var/lib/vmware/Shared VMs" +VM_HOSTD_USER="root" + +pkg_nofetch() { + local bundle + + if use x86; then + bundle="${MY_P}.i386.bundle" + elif use amd64; then + bundle="${MY_P}.x86_64.bundle" + fi + + einfo "Please download ${bundle}" + einfo "from ${HOMEPAGE}" + einfo "and place it in ${DISTDIR}" +} + +src_unpack() { + local component; for component in \ + vmware-vmx \ + vmware-player-app \ + vmware-player-setup \ + vmware-workstation \ + vmware-network-editor \ + vmware-network-editor-ui \ + vmware-usbarbitrator + do + vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" "${component}" "${S}" + done + + if use server; then + vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" vmware-workstation-server #"${S}" + fi + + if use vix; then + vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" vmware-vix-core vmware-vix + vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" vmware-vix-lib-Workstation800andvSphere500 vmware-vix + fi + if use ovftool; then + vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" vmware-ovftool + fi + +} + +src_prepare() { + rm -f bin/vmware-modconfig + rm -rf lib/modules/binary + if use server; then + rm -f vmware-workstation-server/bin/{openssl,configure-hostd.sh} + fi + + find "${S}" -name '*.a' -delete + +# clean_bundled_libs +} + +clean_bundled_libs() { + ebegin 'Removing superfluous libraries' + cd lib/lib || die + ldconfig -p | \ + sed 's:^\s\+\([^(]*[^( ]\).*=> /.*$:\1:g;t;d' | \ + fgrep -vx 'libcrypto.so.0.9.8 +libssl.so.0.9.8i +libgcr.so.0 +libglib-2.0.so.0' | + xargs -d'\n' -r rm -rf + eend +} + +src_install() { + local major_minor=$(get_version_component_range 1-2 "${PV}") + local major_minor_revision=$(get_version_component_range 1-3 "${PV}") + local build=$(get_version_component_range 4 "${PV}") + + # install the binaries + into "${VM_INSTALL_DIR}" + dobin bin/* + + # install the libraries + insinto "${VM_INSTALL_DIR}"/lib/vmware + doins -r lib/* + + # install the ancillaries + insinto /usr + doins -r share + + if use cups; then + exeinto $(cups-config --serverbin)/filter + doexe extras/thnucups + + insinto /etc/cups + doins -r etc/cups/* + fi + + insinto /etc/xdg + doins -r etc/xdg/* + + # install documentation + doman man/man1/vmware.1.gz + + if use doc; then + dodoc doc/* + fi + + insinto "${VM_INSTALL_DIR}"/lib/vmware/setup + doins vmware-config + + # install vmware workstation server + if use server; then + dosbin sbin/* + + cd "${S}"/vmware-workstation-server + + # install binaries + into "${VM_INSTALL_DIR}"/lib/vmware + dobin bin/* + + # install the libraries + insinto "${VM_INSTALL_DIR}"/lib/vmware/lib + doins -r lib/* + + into "${VM_INSTALL_DIR}" + for tool in vmware-{hostd,vim-cmd,adminTool} ; do + cat > "${T}/${tool}" <<-EOF + #!/usr/bin/env bash + set -e + + . /etc/vmware/bootstrap + + exec "${VM_INSTALL_DIR}/lib/vmware/lib/wrapper-gtk24.sh" \\ + "${VM_INSTALL_DIR}/lib/vmware/lib" \\ + "${VM_INSTALL_DIR}/lib/vmware/bin/${tool}" \\ + "${VM_INSTALL_DIR}/lib/vmware/libconf" "\$@" + EOF + dobin "${T}/${tool}" + done + + insinto "${VM_INSTALL_DIR}"/lib/vmware + doins -r hostd + + # create the configuration + insinto /etc/vmware/hostd + doins -r config/etc/vmware/hostd/* + doins -r etc/vmware/hostd/* + + insinto /etc/vmware/ssl + doins etc/vmware/ssl/* + + # pam + pamd_mimic_system vmware-authd auth account + + # create directory for shared virtual machines. + keepdir "${VM_DATA_STORE_DIR}" + keepdir /var/log/vmware + fi + + # install vmware-vix + if use vix; then + cd "${S}"/vmware-vix + + # install the binary + into "${VM_INSTALL_DIR}" + dobin bin/* + + # install the libraries + insinto "${VM_INSTALL_DIR}"/lib/vmware-vix + doins -r lib/* + + dosym vmware-vix/libvixAllProducts.so "${VM_INSTALL_DIR}"/lib/libbvixAllProducts.so + + # install headers + insinto /usr/include/vmware-vix + doins include/* + + if use doc; then + dohtml -r doc/* + fi + fi + + # install ovftool + if use ovftool; then + cd "${S}" + + insinto "${VM_INSTALL_DIR}"/lib/vmware-ovftool + doins -r vmware-ovftool/* + + chmod 0755 "${D}${VM_INSTALL_DIR}"/lib/vmware-ovftool/{ovftool,ovftool.bin} + dosym "${D}${VM_INSTALL_DIR}"/lib/vmware-ovftool/ovftool "${VM_INSTALL_DIR}"/bin/ovftool + fi + + # create symlinks for the various tools + local tool ; for tool in thnuclnt vmware vmplayer{,-daemon} \ + vmware-{acetool,enter-serial,gksu,fuseUI,modconfig{,-console},netcfg,tray,unity-helper} ; do + dosym appLoader "${VM_INSTALL_DIR}"/lib/vmware/bin/"${tool}" + done + 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 + + # fixing gksu problem + if use gnome; then + dosym /usr/bin/gksu "${VM_INSTALL_DIR}"/bin/vmware-gksu + fi + if use kde; then + dosym /usr/bin/kdesu "${VM_INSTALL_DIR}"/bin/vmware-gksu + fi + + # fix up permissions + fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/{bin/*,lib/wrapper-gtk24.sh,lib/libgksu2.so.0/gksu-run-helper,setup/*} + fperms 4711 "${VM_INSTALL_DIR}"/bin/vmware-mount + if use server; then + fperms 4711 "${VM_INSTALL_DIR}"/sbin/vmware-authd + fi + fperms 4711 "${VM_INSTALL_DIR}"/lib/vmware/bin/vmware-vmx* + + if use vix; then + fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware-vix/setup/* + fi + + # create the environment + local envd="${T}/90vmware" + cat > "${envd}" <<-EOF + PATH='${VM_INSTALL_DIR}/bin' + ROOTPATH='${VM_INSTALL_DIR}/bin' + EOF + doenvd "${envd}" + + # create the configuration + dodir /etc/vmware + + cat > "${D}"/etc/vmware/bootstrap <<-EOF + BINDIR='${VM_INSTALL_DIR}/bin' + LIBDIR='${VM_INSTALL_DIR}/lib' + EOF + + cat > "${D}"/etc/vmware/config <<-EOF + bindir = "${VM_INSTALL_DIR}/bin" + libdir = "${VM_INSTALL_DIR}/lib/vmware" + initscriptdir = "/etc/init.d" + authd.fullpath = "${VM_INSTALL_DIR}/sbin/vmware-authd" + gksu.rootMethod = "su" + VMCI_CONFED = "yes" + VMBLOCK_CONFED = "yes" + VSOCK_CONFED = "yes" + NETWORKING = "yes" + player.product.version = "${major_minor_revision}" + product.version = "${major_minor_revision}" + product.buildNumber = "${build}" + product.name = "VMware Workstation" + workstation.product.version = "${major_minor_revision}" + EOF + + if use vix; then + cat >> "${D}"/etc/vmware/config <<-EOF + vmware.fullpath = "${VM_INSTALL_DIR}/bin/vmware" + vix.libdir = "${VM_INSTALL_DIR}/lib/vmware-vix" + vix.config.version = "1" + EOF + fi + + if use server; then + cat >> "${D}"/etc/vmware/config <<-EOF + authd.client.port = "902" + authd.proxy.nfc = "vmware-hostd:ha-nfc" + authd.soapserver = "TRUE" + EOF + fi + + # install the init.d script + local initscript="${T}/vmware.rc" + sed -e "s:@@BINDIR@@:${VM_INSTALL_DIR}/bin:g" \ + "${FILESDIR}/vmware-${major_minor}.rc" > ${initscript} + newinitd "${initscript}" vmware + + if use server; then + # install the init.d script + local initscript="${T}/vmware-workstation-server.rc" + sed -e "s:@@ETCDIR@@:/etc/vmware:g" \ + -e "s:@@PREFIX@@:${VM_INSTALL_DIR}:g" \ + -e "s:@@BINDIR@@:${VM_INSTALL_DIR}/bin:g" \ + -e "s:@@LIBDIR@@:${VM_INSTALL_DIR}/lib/vmware:g" \ + "${FILESDIR}/vmware-server-8.0.rc" > ${initscript} + newinitd "${initscript}" vmware-workstation-server + fi + + # fill in variable placeholders + sed -e "s:@@LIBCONF_DIR@@:${VM_INSTALL_DIR}/lib/vmware/libconf:g" \ + -i "${D}${VM_INSTALL_DIR}"/lib/vmware/libconf/etc/{gtk-2.0/{gdk-pixbuf.loaders,gtk.immodules},pango/pango{.modules,rc}} + sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmware:g" \ + -i "${D}/usr/share/applications/${PN}.desktop" + sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmplayer:g" \ + -i "${D}/usr/share/applications/vmware-player.desktop" + sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmware-netcfg:g" \ + -i "${D}/usr/share/applications/vmware-netcfg.desktop" + + if use server; then + # Configuration for vmware-workstation-server + local hostdUser="${VM_HOSTD_USER:-root}" + sed -e "/ACEDataUser/s:root:${hostdUser}:g" \ + -i "${D}/etc/vmware/hostd/authorization.xml" || die + + # Shared VMs Path: [standard]. + sed -e "s:##{DS_NAME}##:standard:g" \ + -e "s:##{DS_PATH}##:${VM_DATA_STORE_DIR}:g" \ + -i "${D}/etc/vmware/hostd/datastores.xml" || die + + sed -e "s:##{HTTP_PORT}##:-1:g" \ + -e "s:##{HTTPS_PORT}##:443:g" \ + -e "s:##{PIPE_PREFIX}##:/var/run/vmware/:g" \ + -i "${D}/etc/vmware/hostd/proxy.xml" || die + + # See vmware-workstation-server.py for more details. + sed -e "s:##{BUILD_CFGDIR}##:/etc/vmware/hostd/:g" \ + -e "s:##{CFGALTDIR}##:/etc/vmware/hostd/:g" \ + -e "s:##{CFGDIR}##:/etc/vmware/:g" \ + -e "s:##{ENABLE_AUTH}##:true:g" \ + -e "s:##{HOSTDMODE}##:ws:g" \ + -e "s:##{HOSTD_CFGDIR}##:/etc/vmware/hostd/:g" \ + -e "s:##{HOSTD_MOCKUP}##:false:g" \ + -e "s:##{LIBDIR}##:${VM_INSTALL_DIR}/lib/vmware:g" \ + -e "s:##{LIBDIR_INSTALLED}##:${VM_INSTALL_DIR}/lib/vmware/:g" \ + -e "s:##{LOGDIR}##:/var/log/vmware/:g" \ + -e "s:##{LOGLEVEL}##:verbose:g" \ + -e "s:##{MOCKUP}##:mockup-host-config.xml:g" \ + -e "s:##{PLUGINDIR}##:./:g" \ + -e "s:##{SHLIB_PREFIX}##:lib:g" \ + -e "s:##{SHLIB_SUFFIX}##:.so:g" \ + -e "s:##{USE_BLKLISTSVC}##:false:g" \ + -e "s:##{USE_CBRCSVC}##:false:g" \ + -e "s:##{USE_CIMSVC}##:false:g" \ + -e "s:##{USE_DIRECTORYSVC}##:false:g" \ + -e "s:##{USE_DIRECTORYSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_DYNAMIC_PLUGIN_LOADING}##:false:g" \ + -e "s:##{USE_DYNAMO}##:false:g" \ + -e "s:##{USE_DYNSVC}##:false:g" \ + -e "s:##{USE_GUESTSVC}##:false:g" \ + -e "s:##{USE_HBRSVC}##:false:g" \ + -e "s:##{USE_HBRSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_HOSTSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_HTTPNFCSVC}##:false:g" \ + -e "s:##{USE_HTTPNFCSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_LICENSESVC_MOCKUP}##:false:g" \ + -e "s:##{USE_NFCSVC}##:true:g" \ + -e "s:##{USE_NFCSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_OVFMGRSVC}##:true:g" \ + -e "s:##{USE_PARTITIONSVC}##:false:g" \ + -e "s:##{USE_SECURESOAP}##:false:g" \ + -e "s:##{USE_SNMPSVC}##:false:g" \ + -e "s:##{USE_SOLO_MOCKUP}##:false:g" \ + -e "s:##{USE_STATSSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_VCSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_VDISKSVC}##:false:g" \ + -e "s:##{USE_VDISKSVC_MOCKUP}##:false:g" \ + -e "s:##{USE_VMSVC_MOCKUP}##:false:g" \ + -e "s:##{VM_INVENTORY}##:vmInventory.xml:g" \ + -e "s:##{VM_RESOURCES}##:vmResources.xml:g" \ + -e "s:##{WEBSERVER_PORT_ENTRY}##::g" \ + -e "s:##{WORKINGDIR}##:./:g" \ + -i "${D}/etc/vmware/hostd/config.xml" || die + + sed -e "s:##{ENV_LOCATION}##:/etc/vmware/hostd/env/:g" \ + -i "${D}/etc/vmware/hostd/environments.xml" || die + + # @@VICLIENT_URL@@=XXX + sed -e "s:@@AUTHD_PORT@@:902:g" \ + -i "${D}${VM_INSTALL_DIR}/lib/vmware/hostd/docroot/client/clients.xml" || die + fi +} + +pkg_config() { + "${VM_INSTALL_DIR}"/bin/vmware-networks --postinstall ${PN},old,new +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + fdo-mime_desktop_database_update + gnome2_icon_cache_update + + ewarn "/etc/env.d was updated. Please run:" + ewarn "env-update && source /etc/profile" + ewarn "" + ewarn "Before you can use vmware workstation, you must configure a default network setup." + ewarn "You can do this by running 'emerge --config ${PN}'." +} + +pkg_prerm() { + einfo "Stopping ${PN} for safe unmerge" + /etc/init.d/vmware stop +} + +pkg_postrm() { + fdo-mime_desktop_database_update + gnome2_icon_cache_update +} -- 2.26.2