diff --git a/app-emulation/vmware-modules/Manifest b/app-emulation/vmware-modules/Manifest deleted file mode 100644 index 4c7341a..0000000 --- a/app-emulation/vmware-modules/Manifest +++ /dev/null @@ -1,11 +0,0 @@ -AUX 329-00-vmmon-quick-workaround-for-objtool-warnings.patch 1555 BLAKE2B dd4a58e78634aed9d5fb64bcb02b999d55be6b87e496c8daf640f7027aba3942f4e415125ba8fb847fa832336560d4bdbb0f539fefea3b4d2c175f2cbb33a9d7 SHA512 892bde81c721c18264e154cdfadd6b560af37260c9a457ec321fdf6bdf78b1704df57532b0919ed7dbc5c1036230b95f0cbacb7acbfd15da2145e3445da795f7 -AUX 329-01-vmmon-fix-always_inline-attribute-usage.patch 1204 BLAKE2B faa201beb42ac4a04f660aa99d9cad76c12f47048b49f3c48f6932ec367ffebb9e94c5f06fd0957fb8451c183e6bf21954ce88c04910969f80370c2c85e1024b SHA512 b3ab5a62936bc1bed997f84401df998097062ca2b7425dcc2d01191c9b49ddafcee36e859b1bcd60de0d532c1c597aba2b406d6f90062674d5fe54c1534e3235 -AUX 329-02-vmmon-fix-indirect-call-with-retpoline-build.patch 1829 BLAKE2B 6b2efbd868cd3ecf9bbd5e9781d9e85fa733b5919b66040e9c6cdf9f65bf5c5aabb43e52af9cd224481fc60943df546b2812ae17a65bbb476651ec399194ac4f SHA512 6ea044d1b9096b48fa3825f474a758aa67698753646e62dd83d427bfbf8ebd2168c9d0130a35b4ee81391c3ce4d4459cee39f0354469d0485d30118b50f3463c -AUX 329-03-vmmon-check-presence-of-file_operations-poll.patch 2755 BLAKE2B 9a03511a0068d76574ccc7f5dd32c016477a7ede3c319c31cc4212960258aa3ba28edde655101ee39e441322e5a13dce1d6360c22c21f1ead29666f821f0445f SHA512 7dd424858cff634987323052ed331652e6399911c0389c8077109a91407fd549a47ebb222ffc449d42f4f816a54d682778863fe3488dd47b3bfcbfef1064f876 -AUX 329-4.09-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch 1169 BLAKE2B 4e5a74961ff512748375bd1d90a6670fc519c2c4c0be94f89d14fdf39e4922b057ae2baa38d07d34aca9ec897b012c4b9326dfd51a44235418919708b789895e SHA512 727fb97a63399d7c19238ae864a38cf2297adccb466fc2deba2a72f0592eb655f653d3c8e45dac06bbd0e09fc71a59a8bfea491b7580b37d41d0729f6adc023d -AUX 329-4.10-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch 1131 BLAKE2B 1e07b4a15ff1180349348d84efb606c223f5cfa4accdcc0e1a41c8a0de52fb186bddd3c6cd3f5f48041c52ad2c29110726197f1d9352bd87caf4e646c4c4c001 SHA512 192d6a9a14757706f1c9345ff45592a559729619627a32c9f0a1d7203e60881312a4d0fc92ff750c8ff5b5350cf1a2b55238c16973e9c7eb4c2cfe2966abe7d1 -AUX 329-4.12-00-vmmon-use-standard-definition-of-MSR_MISC_FEATURES_E.patch 1603 BLAKE2B 4eea61a743cb443e4a4c22a02a03410adbae66339ac7ed1c1aafe54e447135c1ed976ce3c97f22db9984926de9b9a09b1820e253978f457c0c2b9d22f8e4c59b SHA512 4413cd5e791dd19c4b47ba2178e386160912882b0e1a549151eafcceae484b5e48f527ee45b14584c98e06c11e28ee5bfef34b318e46b45704fbcf93a7b52b56 -AUX 329-4.13-00-vmmon-use-standard-definition-of-CR3_PCID_MASK-if-av.patch 1167 BLAKE2B b5c1c4d98d2aed5bb473270ea9b5737da05bab45748aa84b0a83c26abf8d826960ff3251132ae2770bf87168bfb9c01ab7c81ec99036af576ca3fa0eb08b36e2 SHA512 1cf13f9c745bcfcf24ac1e8f762d057f1afde46ec1de4e651a07e63e08d9073eca9bdbaa53c5a1ced556ec83da3bfd80d3c65c979fb91566cf3c7ddae38eaeac -AUX 329-4.16-00-vmmon-use-standard-definition-of-MSR_K7_HWCR_SMMLOCK.patch 1097 BLAKE2B edf94d85be2caa69ca8b7856e636dd1fc41d60b43e56e08e913b9decca7f1f3a2a39d98681366a4c2f948a60acdce513f873b1c080d7329720abd0f235ee739a SHA512 f2e359183999f0396406724a8e0a80ceb3551772958a8a1e31eec0af8a746191bf5c7b7a5282d0f59d5a7cdd14744e1b775ad5af45bc5ee030434bcbb686d50c -EBUILD vmware-modules-329.1.5.ebuild 3330 BLAKE2B 335b3971c52dbae4f9d309aad8e17411d1fcabb8cbbb535781ec0f38f202da4b2ebe939359a93366ef9ec33d00abd624fce3f4191fcba509b96367ccdc8ca4b5 SHA512 c91ad321786ebce6126649eb279770ffd60b3260bb58f2a089ebb4439287e83cb273edc7cf38fb073ef76e11297d98687b3a541f64ff97e5b6f0d60fe0b63fb7 -EBUILD vmware-modules-330.0.2.ebuild 3330 BLAKE2B f43fa5d255ab0349d874fb28074992032ded368c926f87aafafef423f84459cd550db92c588ca67ed2a0cc9db928c20c8fe8a254afbe316d07c08f59d67610bb SHA512 92d53fd22a40fb9520e52e0073e5e326aaa332797b06d8dcf19987444ba456bb06a8dc1fc4f0c70cb97fb13932db82db1cc0be5b1ad52bc727fce836df6de21a diff --git a/app-emulation/vmware-modules/files/329-00-vmmon-quick-workaround-for-objtool-warnings.patch b/app-emulation/vmware-modules/files/329-00-vmmon-quick-workaround-for-objtool-warnings.patch deleted file mode 100644 index 8259c8b..0000000 --- a/app-emulation/vmware-modules/files/329-00-vmmon-quick-workaround-for-objtool-warnings.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 182ac915372c798e400c9718499cae2cb1822ef1 Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Sat, 30 Sep 2017 21:41:51 +0200 -Subject: [PATCH 6/6] vmmon: quick workaround for objtool warnings - -As discussed in - - https://bugzilla.suse.com/show_bug.cgi?id=1059674 - -the reason for multiple objtool warnings is the fact that vmmon module -defines its own Panic() function which never returns. While it is marked as -such which is used by the compiler for optimization, there is no way to -find this from object file. - -While this seems innocuous, it might result in problems with unwinder -later. The quickest way around is to replace vmmon's own Panic() with -standard kernel panic() until a cleaner solution is found. ---- - vmmon-only/include/vm_assert.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/vmmon-only/include/vm_assert.h b/vmmon-only/include/vm_assert.h -index 8cdbc93..b869def 100644 ---- a/vmmon-only/include/vm_assert.h -+++ b/vmmon-only/include/vm_assert.h -@@ -67,6 +67,7 @@ extern "C" { - #if defined (VMKPANIC) - #include "vmk_assert.h" - #else /* !VMKPANIC */ -+#include - #define _ASSERT_PANIC(name) \ - Panic(_##name##Fmt "\n", __FILE__, __LINE__) - #define _ASSERT_PANIC_BUG(bug, name) \ -@@ -107,7 +108,7 @@ NORETURN void Panic_NoSave(const char *fmt, ...) PRINTF_DECL(1, 2); - } while(0) - - #else --NORETURN void Panic(const char *fmt, ...) PRINTF_DECL(1, 2); -+#define Panic panic - #endif - - void LogThrottled(uint32 *count, const char *fmt, ...) PRINTF_DECL(2, 3); --- -2.14.3 - diff --git a/app-emulation/vmware-modules/files/329-01-vmmon-fix-always_inline-attribute-usage.patch b/app-emulation/vmware-modules/files/329-01-vmmon-fix-always_inline-attribute-usage.patch deleted file mode 100644 index f9fb7a7..0000000 --- a/app-emulation/vmware-modules/files/329-01-vmmon-fix-always_inline-attribute-usage.patch +++ /dev/null @@ -1,31 +0,0 @@ -From c46d05eb1e2d32d82ec377a4c9b0dd0164eee68e Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Thu, 22 Mar 2018 13:45:34 +0100 -Subject: [PATCH 08/10] vmmon: fix always_inline attribute usage - -Function declared with __attribute__((always_inline)) should also be -declared as inline, otherwise gcc issues a warning "always_inline function -might not be inlinable". It's just cosmetic but getting rid of known -harmless warnings makes it easier to spot actual problems. Use the -__always_inline macro for LinuxDriverSyncReadTSCs() as this is how always -inline functions should be declared in kernel code. ---- - vmmon-only/linux/driver.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/vmmon-only/linux/driver.c b/vmmon-only/linux/driver.c -index 1905aa4..b37454c 100644 ---- a/vmmon-only/linux/driver.c -+++ b/vmmon-only/linux/driver.c -@@ -981,7 +981,7 @@ LinuxDriverReadTSC(void *data, // OUT: TSC values - *----------------------------------------------------------------------------- - */ - --__attribute__((always_inline)) static Bool -+__always_inline static Bool - LinuxDriverSyncReadTSCs(uint64 *delta) // OUT: TSC max - TSC min - { - TSCDelta tscDelta; --- -2.17.0 - diff --git a/app-emulation/vmware-modules/files/329-02-vmmon-fix-indirect-call-with-retpoline-build.patch b/app-emulation/vmware-modules/files/329-02-vmmon-fix-indirect-call-with-retpoline-build.patch deleted file mode 100644 index bde7a0e..0000000 --- a/app-emulation/vmware-modules/files/329-02-vmmon-fix-indirect-call-with-retpoline-build.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 6392262b68387299ee81d5d659cb5423a2ae1c9c Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Mon, 26 Mar 2018 13:33:32 +0200 -Subject: [PATCH 09/10] vmmon: fix indirect call with retpoline build - -Build against kernel with retpoline support issues warning - - objtool: Task_Switch()+0x425: indirect call found in RETPOLINE build - -This is because an indirect call in TaskSwitchToMonitor() is encoded using -inline assembler so that it bypasses retpoline generation. For this -purpose, macro CALL_NOSPEC exists since v4.15-rc8 (and has been backported -into some distribution kernels with the rest of retpoline support). Use the -macro if available and fallback to the original code if not. ---- - vmmon-only/common/task.c | 11 +++++++++++ - 1 file changed, 11 insertions(+) - -diff --git a/vmmon-only/common/task.c b/vmmon-only/common/task.c -index 98cc74a..400ebfe 100644 ---- a/vmmon-only/common/task.c -+++ b/vmmon-only/common/task.c -@@ -2203,12 +2203,23 @@ TaskSwitchToMonitor(VMCrossPage *crosspage) - { - uint64 raxGetsWiped, rcxGetsWiped; - -+#ifdef CALL_NOSPEC -+ __asm__ __volatile__(CALL_NOSPEC -+ : "=a" (raxGetsWiped), -+ "=c" (rcxGetsWiped) -+ : "0" (codePtr), -+ "1" (crosspage), -+ THUNK_TARGET(codePtr) -+ : "rdx", "r8", "r9", "r10", "r11", "cc", "memory"); -+#else - __asm__ __volatile__("call *%%rax" - : "=a" (raxGetsWiped), - "=c" (rcxGetsWiped) - : "0" (codePtr), - "1" (crosspage) - : "rdx", "r8", "r9", "r10", "r11", "cc", "memory"); -+#endif -+ - } - #elif defined(_MSC_VER) - /* --- -2.17.0 - diff --git a/app-emulation/vmware-modules/files/329-03-vmmon-check-presence-of-file_operations-poll.patch b/app-emulation/vmware-modules/files/329-03-vmmon-check-presence-of-file_operations-poll.patch deleted file mode 100644 index d470aaf..0000000 --- a/app-emulation/vmware-modules/files/329-03-vmmon-check-presence-of-file_operations-poll.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 70ed9dd2ec64c09fbd0de27dcb10f9948a2b212a Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Mon, 20 Aug 2018 07:46:13 +0200 -Subject: [PATCH] vmmon: check presence of file_operations::poll() - -Commit 11c5ad0ec441 ("eventpoll: switch to ->poll_mask") in v4.18-rc1, made -eventpoll switch from ->poll() to ->poll_mask(), resulting in a null -pointer dereference as vmmon calls the callback directly without checking -its availability. - -Rather than calling the callback directly (which would result in null -pointer dereference), use vfs_poll() wrapper. As this wrapper is only -available since 4.18-rc1 cycle as well, provide a copy to use when building -against older kernels. - -Note: even if the commit revealing the problem was reverted in 4.18-rc3 -(and is unlikely to go back in the same form) so that vmmon no longer -crashes with 4.18 kernel, calling the callback without a check is a bad -practice so let's keep the patch in place. ---- - vmmon-only/include/compat_poll.h | 30 ++++++++++++++++++++++++++++++ - vmmon-only/linux/hostif.c | 3 ++- - 2 files changed, 32 insertions(+), 1 deletion(-) - create mode 100644 vmmon-only/include/compat_poll.h - -diff --git a/vmmon-only/include/compat_poll.h b/vmmon-only/include/compat_poll.h -new file mode 100644 -index 0000000..562cdb6 ---- /dev/null -+++ b/vmmon-only/include/compat_poll.h -@@ -0,0 +1,30 @@ -+#ifndef __COMPAT_POLL_H__ -+#define __COMPAT_POLL_H__ -+ -+#include -+ -+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 18, 0)) -+ -+#ifndef __poll_t -+typedef unsigned int __poll_t; -+#endif -+ -+static inline __poll_t compat_vfs_poll(struct file *file, -+ struct poll_table_struct *pt) -+{ -+ if (unlikely(!file->f_op->poll)) -+ return DEFAULT_POLLMASK; -+ return file->f_op->poll(file, pt); -+} -+ -+#else -+ -+static inline __poll_t compat_vfs_poll(struct file *file, -+ struct poll_table_struct *pt) -+{ -+ return vfs_poll(file, pt); -+} -+ -+#endif -+ -+#endif /* __COMPAT_POLL_H__ */ -diff --git a/vmmon-only/linux/hostif.c b/vmmon-only/linux/hostif.c -index 21758c2..af4b1d9 100644 ---- a/vmmon-only/linux/hostif.c -+++ b/vmmon-only/linux/hostif.c -@@ -74,6 +74,7 @@ - - #include "pgtbl.h" - #include "versioned_atomic.h" -+#include "compat_poll.h" - - #if !defined(CONFIG_HIGH_RES_TIMERS) - #error CONFIG_HIGH_RES_TIMERS required for acceptable performance -@@ -2570,7 +2571,7 @@ HostIF_SemaphoreWait(VMDriver *vm, // IN: - - poll_initwait(&table); - current->state = TASK_INTERRUPTIBLE; -- mask = file->f_op->poll(file, &table.pt); -+ mask = compat_vfs_poll(file, &table.pt); - if (!(mask & (POLLIN | POLLERR | POLLHUP))) { - vm->vmhost->vcpuSemaTask[vcpuid] = current; - schedule_timeout(timeoutms * HZ / 1000); // convert to Hz --- -2.19.0 - diff --git a/app-emulation/vmware-modules/files/329-4.09-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch b/app-emulation/vmware-modules/files/329-4.09-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch deleted file mode 100644 index d41c160..0000000 --- a/app-emulation/vmware-modules/files/329-4.09-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 4d80590924550d0ee3fe470e027deea0ee43e6b6 Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Tue, 18 Apr 2017 12:52:08 +0200 -Subject: [PATCH 1/6] vmnet: use standard definition of PCI_VENDOR_ID_VMWARE if - available - -The PCI_VENDOR_ID_VMWARE macro is defined in mainline pci_ids.h since -commit 94e57fea6202 ("PCI: Move PCI_VENDOR_ID_VMWARE to pci_ids.h") -in v3.18-rc1. ---- - vmnet-only/vm_device_version.h | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/vmnet-only/vm_device_version.h b/vmnet-only/vm_device_version.h -index ab396bc..cafddd0 100644 ---- a/vmnet-only/vm_device_version.h -+++ b/vmnet-only/vm_device_version.h -@@ -35,6 +35,8 @@ - #endif - #endif - -+#include -+ - /* LSILogic 53C1030 Parallel SCSI controller - * LSILogic SAS1068 SAS controller - */ -@@ -53,7 +55,10 @@ - * VMware HD Audio codec - * VMware HD Audio controller - */ -+#ifndef PCI_VENDOR_ID_VMWARE - #define PCI_VENDOR_ID_VMWARE 0x15AD -+#endif -+ - #define PCI_DEVICE_ID_VMWARE_SVGA2 0x0405 - #define PCI_DEVICE_ID_VMWARE_SVGA 0x0710 - #define PCI_DEVICE_ID_VMWARE_VGA 0x0711 --- -2.14.3 - diff --git a/app-emulation/vmware-modules/files/329-4.10-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch b/app-emulation/vmware-modules/files/329-4.10-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch deleted file mode 100644 index a97b987..0000000 --- a/app-emulation/vmware-modules/files/329-4.10-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 7cb0c3beb4abde406d5334376106d68997f6fb51 Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Tue, 18 Apr 2017 13:01:56 +0200 -Subject: [PATCH 2/6] vmnet: use standard definition of - PCI_VENDOR_ID_VMWARE_VMXNET3 if available - -The PCI_DEVICE_ID_VMWARE_VMXNET3 macro is defined in mainline pci_ids.h -since commit b1226c7db1d9 ("vmxnet3: Move PCI Id to pci_ids.h") in -v4.10-rc1. ---- - vmnet-only/vm_device_version.h | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/vmnet-only/vm_device_version.h b/vmnet-only/vm_device_version.h -index cafddd0..9305ddb 100644 ---- a/vmnet-only/vm_device_version.h -+++ b/vmnet-only/vm_device_version.h -@@ -75,7 +75,11 @@ - #define PCI_DEVICE_ID_VMWARE_1394 0x0780 - #define PCI_DEVICE_ID_VMWARE_BRIDGE 0x0790 - #define PCI_DEVICE_ID_VMWARE_ROOTPORT 0x07A0 -+ -+#ifndef PCI_DEVICE_ID_VMWARE_VMXNET3 - #define PCI_DEVICE_ID_VMWARE_VMXNET3 0x07B0 -+#endif -+ - #define PCI_DEVICE_ID_VMWARE_PVSCSI 0x07C0 - #define PCI_DEVICE_ID_VMWARE_82574 0x07D0 - #define PCI_DEVICE_ID_VMWARE_AHCI 0x07E0 --- -2.14.3 - diff --git a/app-emulation/vmware-modules/files/329-4.12-00-vmmon-use-standard-definition-of-MSR_MISC_FEATURES_E.patch b/app-emulation/vmware-modules/files/329-4.12-00-vmmon-use-standard-definition-of-MSR_MISC_FEATURES_E.patch deleted file mode 100644 index 646190b..0000000 --- a/app-emulation/vmware-modules/files/329-4.12-00-vmmon-use-standard-definition-of-MSR_MISC_FEATURES_E.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 53d6ccbeed4c519dc105f98552067ced2ecbd432 Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Fri, 23 Jun 2017 09:29:24 +0200 -Subject: [PATCH 3/6] vmmon: use standard definition of - MSR_MISC_FEATURES_ENABLES if available - -The MSR_MISC_FEATURES_ENABLES macro is defined in mainline since commit -ab6d9468631a ("x86/msr: Rename MISC_FEATURE_ENABLES to -MISC_FEATURES_ENABLES") in v4.12-rc1. - -The MSR_MISC_FEATURES_ENABLES_CPUID_FAULT macro is defined in mainline -since commit e9ea1e7f53b8 ("x86/arch_prctl: Add ARCH_[GET|SET]_CPUID") in -v4.12-rc1. ---- - vmmon-only/include/x86msr.h | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/vmmon-only/include/x86msr.h b/vmmon-only/include/x86msr.h -index 3a6bfe8..904d9e9 100644 ---- a/vmmon-only/include/x86msr.h -+++ b/vmmon-only/include/x86msr.h -@@ -24,6 +24,7 @@ - - #ifndef _X86MSR_H_ - #define _X86MSR_H_ -+#include - #define INCLUDE_ALLOW_USERLEVEL - #define INCLUDE_ALLOW_VMX - -@@ -112,7 +113,9 @@ MSRQuery; - #define MSR_TSC_AUX 0xc0000103 - #define MSR_BD_TSC_RATIO 0xc0000104 - -+#ifndef MSR_MISC_FEATURES_ENABLES - #define MSR_MISC_FEATURES_ENABLES 0x140 -+#endif - - /* Intel Core Architecture and later: use only architected counters. */ - #define IA32_MSR_PERF_CAPABILITIES 0x345 -@@ -612,7 +615,11 @@ typedef enum { - /* - * MISC_FEATURES_ENABLES bits - */ -+#ifdef MSR_MISC_FEATURES_ENABLES_CPUID_FAULT -+#define MSR_MISC_FEATURES_ENABLES_CPUID_FAULTING MSR_MISC_FEATURES_ENABLES_CPUID_FAULT -+#else - #define MSR_MISC_FEATURES_ENABLES_CPUID_FAULTING 1 -+#endif - - - --- -2.14.3 - diff --git a/app-emulation/vmware-modules/files/329-4.13-00-vmmon-use-standard-definition-of-CR3_PCID_MASK-if-av.patch b/app-emulation/vmware-modules/files/329-4.13-00-vmmon-use-standard-definition-of-CR3_PCID_MASK-if-av.patch deleted file mode 100644 index b52f0a9..0000000 --- a/app-emulation/vmware-modules/files/329-4.13-00-vmmon-use-standard-definition-of-CR3_PCID_MASK-if-av.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 704be6e3f2143df35e99025caa3393b9c309fbc1 Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Mon, 24 Jul 2017 10:08:55 +0200 -Subject: [PATCH 4/6] vmmon: use standard definition of CR3_PCID_MASK if - available - -The CR3_PCID_MASK is defined in mainline asm/processor-flags.h since -commit 6c690ee1039b ("x86/mm: Split read_cr3() into read_cr3_pa() and -__read_cr3()") in v4.13-rc1. ---- - vmmon-only/include/x86_basic_defs.h | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/vmmon-only/include/x86_basic_defs.h b/vmmon-only/include/x86_basic_defs.h -index abfb0b8..8c7566f 100644 ---- a/vmmon-only/include/x86_basic_defs.h -+++ b/vmmon-only/include/x86_basic_defs.h -@@ -35,6 +35,8 @@ - #define INCLUDE_ALLOW_VMCORE - #include "includeCheck.h" - -+#include -+ - #define X86_MAX_INSTR_LEN 15 /* Max byte length of an x86 instruction. */ - - #define NUM_IDT_VECTORS 256 -@@ -75,7 +77,9 @@ - #define CR3_PDB_MASK 0xfffff000 - #define CR3_IGNORE 0xFFF - #define PAE_CR3_IGNORE 0x1F -+#ifndef CR3_PCID_MASK - #define CR3_PCID_MASK 0xFFF -+#endif - #define CR3_NO_FLUSH (1ULL << 63) - - #define CR4_VME 0x00000001 --- -2.14.3 - diff --git a/app-emulation/vmware-modules/files/329-4.16-00-vmmon-use-standard-definition-of-MSR_K7_HWCR_SMMLOCK.patch b/app-emulation/vmware-modules/files/329-4.16-00-vmmon-use-standard-definition-of-MSR_K7_HWCR_SMMLOCK.patch deleted file mode 100644 index 9be5642..0000000 --- a/app-emulation/vmware-modules/files/329-4.16-00-vmmon-use-standard-definition-of-MSR_K7_HWCR_SMMLOCK.patch +++ /dev/null @@ -1,30 +0,0 @@ -From ae4d4697c6f48be9314d807480dac206c9889d46 Mon Sep 17 00:00:00 2001 -From: Michal Kubecek -Date: Sun, 11 Feb 2018 01:17:00 +0100 -Subject: [PATCH 07/10] vmmon: use standard definition of MSR_K7_HWCR_SMMLOCK - if available - -The MSR_K7_HWCR_SMMLOCK macro is defined in mainline since commit -18c71ce9c882 ("x86/CPU/AMD: Add the Secure Encrypted Virtualization CPU -feature") in v4.16-rc1. ---- - vmmon-only/include/x86msr.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/vmmon-only/include/x86msr.h b/vmmon-only/include/x86msr.h -index e10a859..5618776 100644 ---- a/vmmon-only/include/x86msr.h -+++ b/vmmon-only/include/x86msr.h -@@ -441,7 +441,9 @@ typedef enum { - #define MSR_K7_HWCR_SSEDIS 0x00008000ULL // Disable SSE bit - #define MSR_K7_HWCR_MONMWAITUSEREN 0x00000400ULL // Enable MONITOR/MWAIT CPL>0 - #define MSR_K7_HWCR_TLBFFDIS 0x00000040ULL // Disable TLB Flush Filter -+#ifndef MSR_K7_HWCR_SMMLOCK - #define MSR_K7_HWCR_SMMLOCK 0x00000001ULL // Lock SMM environment -+#endif - - #ifndef MSR_K8_SYSCFG - #define MSR_K8_SYSCFG 0xc0010010 --- -2.17.0 - diff --git a/app-emulation/vmware-modules/vmware-modules-329.1.5.ebuild b/app-emulation/vmware-modules/vmware-modules-329.1.5.ebuild deleted file mode 100644 index 6329818..0000000 --- a/app-emulation/vmware-modules/vmware-modules-329.1.5.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eapi7-ver eutils flag-o-matic linux-info linux-mod user udev - -DESCRIPTION="VMware kernel modules" -HOMEPAGE="http://www.vmware.com/" - -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64" -IUSE="" - -RDEPEND="" -DEPEND=" - =app-emulation/vmware-workstation-14.$(ver_cut 2-3)* -" - -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 - CONFIG_CHECK="${CONFIG_CHECK} VMWARE_VMCI VMWARE_VMCI_VSOCKETS" - - linux-info_pkg_setup - linux-mod_pkg_setup - - VMWARE_GROUP=${VMWARE_GROUP:-vmware} - - VMWARE_MODULE_LIST="vmmon vmnet" - - 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 -mavx -mpclmul -maes - append-cflags -mno-sse # Found a problem similar to bug #492964 - - 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() { - # from https://github.com/mkubecek/vmware-host-modules/tree/workstation-14.1.1 - kernel_is ge 4 9 0 && epatch "${FILESDIR}/329-4.09-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch" - kernel_is ge 4 10 0 && epatch "${FILESDIR}/329-4.10-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch" - kernel_is ge 4 12 0 && epatch "${FILESDIR}/329-4.12-00-vmmon-use-standard-definition-of-MSR_MISC_FEATURES_E.patch" - kernel_is ge 4 13 0 && epatch "${FILESDIR}/329-4.13-00-vmmon-use-standard-definition-of-CR3_PCID_MASK-if-av.patch" - epatch "${FILESDIR}/329-00-vmmon-quick-workaround-for-objtool-warnings.patch" - kernel_is ge 4 16 0 && epatch "${FILESDIR}/329-4.16-00-vmmon-use-standard-definition-of-MSR_K7_HWCR_SMMLOCK.patch" - epatch "${FILESDIR}/329-01-vmmon-fix-always_inline-attribute-usage.patch" - epatch "${FILESDIR}/329-02-vmmon-fix-indirect-call-with-retpoline-build.patch" - epatch "${FILESDIR}/329-03-vmmon-check-presence-of-file_operations-poll.patch" - - # decouple the kernel include dir from the running kernel version: https://github.com/stefantalpalaru/gentoo-overlay/issues/17 - sed -i -e "s%HEADER_DIR = /lib/modules/\$(VM_UNAME)/build/include%HEADER_DIR = ${KERNEL_DIR}/include%" */Makefile || die "sed failed" - - # Allow user patches so they can support RC kernels and whatever else - default -} - -src_install() { - linux-mod_src_install - local udevrules="${T}/60-vmware.rules" - cat > "${udevrules}" <<-EOF - KERNEL=="vmci", GROUP="vmware", MODE="660" - KERNEL=="vmw_vmci", GROUP="vmware", MODE="660" - KERNEL=="vmmon", GROUP="vmware", MODE="660" - KERNEL=="vsock", GROUP="vmware", MODE="660" - EOF - udev_dorules "${udevrules}" - - dodir /etc/modprobe.d/ - - cat > "${D}"/etc/modprobe.d/vmware.conf <<-EOF - # Support for vmware vmci in kernel module - alias vmci vmw_vmci - EOF - - export installed_modprobe_conf=1 - dodir /etc/modprobe.d/ - cat >> "${D}"/etc/modprobe.d/vmware.conf <<-EOF - # Support for vmware vsock in kernel module - alias vsock vmw_vsock_vmci_transport - EOF - - export installed_modprobe_conf=1 -} - -pkg_postinst() { - linux-mod_pkg_postinst -} diff --git a/app-emulation/vmware-modules/vmware-modules-330.0.2.ebuild b/app-emulation/vmware-modules/vmware-modules-330.0.2.ebuild deleted file mode 100644 index 3bdd988..0000000 --- a/app-emulation/vmware-modules/vmware-modules-330.0.2.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eapi7-ver eutils flag-o-matic linux-info linux-mod user udev - -DESCRIPTION="VMware kernel modules" -HOMEPAGE="http://www.vmware.com/" - -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64" -IUSE="" - -RDEPEND="" -DEPEND=" - =app-emulation/vmware-workstation-15.$(ver_cut 2-3)* -" - -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 - CONFIG_CHECK="${CONFIG_CHECK} VMWARE_VMCI VMWARE_VMCI_VSOCKETS" - - linux-info_pkg_setup - linux-mod_pkg_setup - - VMWARE_GROUP=${VMWARE_GROUP:-vmware} - - VMWARE_MODULE_LIST="vmmon vmnet" - - 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 -mavx -mpclmul -maes - append-cflags -mno-sse # Found a problem similar to bug #492964 - - 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() { - # from https://github.com/mkubecek/vmware-host-modules/tree/workstation-14.1.1 - kernel_is ge 4 9 0 && epatch "${FILESDIR}/329-4.09-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch" - kernel_is ge 4 10 0 && epatch "${FILESDIR}/329-4.10-00-vmnet-use-standard-definition-of-PCI_VENDOR_ID_VMWAR.patch" - kernel_is ge 4 12 0 && epatch "${FILESDIR}/329-4.12-00-vmmon-use-standard-definition-of-MSR_MISC_FEATURES_E.patch" - kernel_is ge 4 13 0 && epatch "${FILESDIR}/329-4.13-00-vmmon-use-standard-definition-of-CR3_PCID_MASK-if-av.patch" - epatch "${FILESDIR}/329-00-vmmon-quick-workaround-for-objtool-warnings.patch" - kernel_is ge 4 16 0 && epatch "${FILESDIR}/329-4.16-00-vmmon-use-standard-definition-of-MSR_K7_HWCR_SMMLOCK.patch" - epatch "${FILESDIR}/329-01-vmmon-fix-always_inline-attribute-usage.patch" - epatch "${FILESDIR}/329-02-vmmon-fix-indirect-call-with-retpoline-build.patch" - epatch "${FILESDIR}/329-03-vmmon-check-presence-of-file_operations-poll.patch" - - # decouple the kernel include dir from the running kernel version: https://github.com/stefantalpalaru/gentoo-overlay/issues/17 - sed -i -e "s%HEADER_DIR = /lib/modules/\$(VM_UNAME)/build/include%HEADER_DIR = ${KERNEL_DIR}/include%" */Makefile || die "sed failed" - - # Allow user patches so they can support RC kernels and whatever else - default -} - -src_install() { - linux-mod_src_install - local udevrules="${T}/60-vmware.rules" - cat > "${udevrules}" <<-EOF - KERNEL=="vmci", GROUP="vmware", MODE="660" - KERNEL=="vmw_vmci", GROUP="vmware", MODE="660" - KERNEL=="vmmon", GROUP="vmware", MODE="660" - KERNEL=="vsock", GROUP="vmware", MODE="660" - EOF - udev_dorules "${udevrules}" - - dodir /etc/modprobe.d/ - - cat > "${D}"/etc/modprobe.d/vmware.conf <<-EOF - # Support for vmware vmci in kernel module - alias vmci vmw_vmci - EOF - - export installed_modprobe_conf=1 - dodir /etc/modprobe.d/ - cat >> "${D}"/etc/modprobe.d/vmware.conf <<-EOF - # Support for vmware vsock in kernel module - alias vsock vmw_vsock_vmci_transport - EOF - - export installed_modprobe_conf=1 -} - -pkg_postinst() { - linux-mod_pkg_postinst -} diff --git a/app-emulation/vmware-workstation/Manifest b/app-emulation/vmware-workstation/Manifest deleted file mode 100644 index a926120..0000000 --- a/app-emulation/vmware-workstation/Manifest +++ /dev/null @@ -1,15 +0,0 @@ -AUX configure-hostd.sh 372 BLAKE2B 0ed2d479a46d69ff8498bfac180f0440fb57fb173fc1a427115872a40a47559725623399652e9663fa8a4ca0d7e020d5445bafb6c37f45449dea341fc9f6cce6 SHA512 87c84f5e51e8b4585a9a55f13771cd8b84f2e4e0bb33679e3a1b23eb84a5be5d523a57b6c770095c1d21712a98e9317bbd215ab027843b0586b35ecf9fb85b49 -AUX vmware-14.1.rc 2476 BLAKE2B dff25b43c5fa57186be2a5f0ca4606d26cd1c3f3dbeb91d855fc07a9fd576f446983c852c8e0b112c5616bb95dfddc7e2c738b4d0ca341c781d7addcb45068cd SHA512 9bae224387128b2cd221d509e2933042e3925fb041670907d8a47c70a488214206912fe25ab24c0bdeb31591149e62aba374d3fa63fdd08644e09667e195967f -AUX vmware-15.0.rc 2476 BLAKE2B dff25b43c5fa57186be2a5f0ca4606d26cd1c3f3dbeb91d855fc07a9fd576f446983c852c8e0b112c5616bb95dfddc7e2c738b4d0ca341c781d7addcb45068cd SHA512 9bae224387128b2cd221d509e2933042e3925fb041670907d8a47c70a488214206912fe25ab24c0bdeb31591149e62aba374d3fa63fdd08644e09667e195967f -AUX vmware-server-14.1.rc 1506 BLAKE2B 886ed1de7a99320611a28a43b48cf17715fcab8bf533a73c28a1aa2f8d150ee2b84e1e510e864b18347f3bd7e43faec3cfc90f09d5ac9c0afe821f67654a68c4 SHA512 548ff69f87bee2b6c82bd931d22dd560370c4a00641ae47d05af05bbc72cedc8fd25054abc405a590b72227b10c5997d79f16ded67f3e0cfac142eb248b47d44 -AUX vmware-server-15.0.rc 1506 BLAKE2B 886ed1de7a99320611a28a43b48cf17715fcab8bf533a73c28a1aa2f8d150ee2b84e1e510e864b18347f3bd7e43faec3cfc90f09d5ac9c0afe821f67654a68c4 SHA512 548ff69f87bee2b6c82bd931d22dd560370c4a00641ae47d05af05bbc72cedc8fd25054abc405a590b72227b10c5997d79f16ded67f3e0cfac142eb248b47d44 -DIST VMware-Workstation-Full-14.1.5-10950780.x86_64.bundle 461118056 BLAKE2B b7aff88b89555d0ba759d6f78a463cc3d90c0941d240279102717b13ca73e2f17b4e89bcc66b1c288cc0fb35774ccc323585779da8cbed849c7b66618a2cccfb SHA512 0c69ec0373c61f6e1ea27cdd17d427ce99cfa45d377cc844b3aaf0c66b8b8744d15e7bbdb971e79fcd5c5f8e4ea345337046e83d26d37b102508da422d881ec8 -DIST VMware-Workstation-Full-15.0.2-10952284.x86_64.bundle 495664015 BLAKE2B 478423644e68fe610f443197b6933d4ad44373ad50451a31231f3bdbf39390e917c824a0affa84510742d02c42a944b71b5e4ef0f2ad5ebb0caaa41b76a0d2f9 SHA512 3867c9dba46c674071164f037e9b8d6388dc2fe3fd6dcc8b13e3e73988c697f34bcdd2d32ec579a2c407614066a142ba1adf673dfb2b84037fa2acfb92c81ade -DIST com.vmware.fusion.tools.darwin-14.1.5.10950780.zip.tar 2805760 BLAKE2B f20193053e1239061e16603e488349838ffce3f99d120e92fad9595d865d303b847a6483e5e7add8be26c6848bc183a332e6b6b0c5fe0a3741ea55bfc7e4549c SHA512 f34cedb80d8d7656bb1df7e2771196b5373ad2aad7aa93fb1bd5421fa157f2e46a8642b27254ee26f32d64398f71e061bd1a65933216f32b1b2e11cce939b64c -DIST com.vmware.fusion.tools.darwin-15.0.2.10952284.zip.tar 2795520 BLAKE2B c1cb67abe46aa006c7633075dd87b9071213ee8efd215243e895db242ffdbecf13c29515b433259bf9dbd72cf30376a9503f189e65fddfb2550d8d7ec003e3a7 SHA512 b1b42426678a6118f664eba9f0c68313948b51a0add4ffd1b59201d177db0552bd8367f66ef83a5769069e34efaab7ef10f413a46218589b76867a6e743229f8 -DIST com.vmware.fusion.tools.darwinPre15-14.1.5.10950780.zip.tar 2478080 BLAKE2B 6b1d2e3f280b891d9b121fad063f7e164c496d8e66f5de3d6da73e245a327159c4d6ba52446b3bdf1d94bca0898b289972c25d9ae9a4dec0fd133216a52e9806 SHA512 cfe09773ca477e1d928ad6b2d8cc36e632fd82dc63b2447cb05481b8ce320bc9bad6f157f1909b01cea8067cd171ecebeb42465ac71e3f57b9121949b1605ef9 -DIST com.vmware.fusion.tools.darwinPre15-15.0.2.10952284.zip.tar 2478080 BLAKE2B 661a53816a33de87305a9d61040ba742c97ff3885b2004ea05f9d7b5a7d5862185e82e1cefe6aa505c89ac3d487574514258719148c4d9f58d172c40f47c9cd7 SHA512 b7132b9ed302de2ce3b39d63b8eaea7d82f7e1a8cb66f618fa0247119746000986b7014bfd1772e27df2e6941e1000fd6143fcf9fdd2bd9b7164b01a9bd2e8a0 -DIST unlocker-3.0.2.tar.gz 15984801 BLAKE2B e157ed24ad6cea1ab16dd5fc11935b7cdbb3fb0a1e0a9c059eb100f0c57508b749884111b93a9f272ad2c5a9ecd4fadb177ccac47d7688665c5fa8f100fcd2b1 SHA512 83a390562761791531574c05d2a5caacd936b45b32f26a1e5ba953ce32e27af29cb3ac0984c552c2eb9cfdf033d4b95fae1c33a70f2b169563d74d1ea188dacf -DIST vmware-systemd-gentoo-02.tgz 14064 BLAKE2B 24ac2c2f295130f4aadad867ec88d652bd292cc60e6b471bb2e01069fe01d84dac3d8b0ca7690ebf218d663adfe0c1dc889d3f4f53cf3178b68291461260748b SHA512 3a382bfd5f1eb2b218d8012588ea55c1f22786dba35a1fc0fdfdb4e40b05e0e735ed09c6961684f6442e863c3ed72024ce01f19113bbd9ca47c32e3f43c55f42 -EBUILD vmware-workstation-14.1.5.10950780.ebuild 21229 BLAKE2B 91a655b414a893d78cb94308d714c30c21773d1e9ecc85049c15d3bf0968c658e47dfa55aa52b3a1834c9bece1340be482e73a37342ae89814a67180e2ac62be SHA512 a5ab74213cc505f4676d419bf6a8eefc242445f834e4c9c4eeced1fb94bac54ccd23ed177f4cdea2b62648983f0cef007cfe9c416d45e2ebb12e86fbc302f36a -EBUILD vmware-workstation-15.0.2.10952284.ebuild 21229 BLAKE2B 883e4c67e3c75f3777830fcb28ccfde4f6a4cfc5e5219baa7cc5031775575cdf47631d5fab3f16200a8283fb502268ba863da4019a51154243cb3d95a1f0059e SHA512 fab45e76e929d23115a5f177e91964c076015868ed68d4ed804087480db259645cc4a041e94285db8967a675e251e66a8fa67c1a5ef92ffbe9c8da6e3c6bbbc2 diff --git a/app-emulation/vmware-workstation/files/configure-hostd.sh b/app-emulation/vmware-workstation/files/configure-hostd.sh deleted file mode 100644 index 480e903..0000000 --- a/app-emulation/vmware-workstation/files/configure-hostd.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -action="$1" - -case $action in - add) - rc-update -q add vmware-workstation-server default - rc-service vmware-workstation-server start - ;; - remove) - rc-update -q del vmware-workstation-server default - rc-service vmware-workstation-server stop - ;; - status) - rc-service -q vmware-workstation-server status - ;; - *) - exit 1 - ;; -esac diff --git a/app-emulation/vmware-workstation/files/vmware-14.1.rc b/app-emulation/vmware-workstation/files/vmware-14.1.rc deleted file mode 100644 index b627869..0000000 --- a/app-emulation/vmware-workstation/files/vmware-14.1.rc +++ /dev/null @@ -1,102 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -depend() { - need localmount - use net -} - -start() { - ebegin Starting VMware USB Arbitrator - @@BINDIR@@/vmware-usbarbitrator - eend $? - ebegin Starting VMware services - - # vmci might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vmci) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vmci.ko \ - /lib/modules/$(uname -r)/kernel/drivers/misc/vmw_vmci/vmw_vmci.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -v $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vsock might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vsock_vmci_transport) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vsock.ko \ - /lib/modules/$(uname -r)/kernel/net/vmw_vsock/vmw_vsock_vmci_transport.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -v $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vmblock - if [[ -f /lib/modules/$(uname -r)/misc/vmblock.ko ]]; then - modprobe -v vmblock - eend $? - fi - - # vmci or vsock were already loaded by the previous modprobe, - # no need to do it here - # quiet for vmci because it may not be there - modprobe -av vmmon vmnet - eend $? - @@BINDIR@@/vmware-networks --start - eend $? -} - -stop() { - ebegin Stopping VMware USB Arbitrator - killall --wait vmware-usbarbitrator - eend $? - @@BINDIR@@/vmware-networks --stop - eend $? - ebegin Stopping VMware services - modprobe -rv vmmon vmnet - eend $? - - # vsock might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vsock_vmci_transport) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vsock.ko \ - /lib/modules/$(uname -r)/kernel/net/vmw_vsock/vmw_vsock_vmci_transport.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -rv $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vmci might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vmci) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vmci.ko \ - /lib/modules/$(uname -r)/kernel/drivers/misc/vmw_vmci/vmw_vmci.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -rv $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vmblock - if [[ -f /lib/modules/$(uname -r)/misc/vmblock.ko ]]; then - modprobe -rv vmblock - eend $? - fi -} diff --git a/app-emulation/vmware-workstation/files/vmware-15.0.rc b/app-emulation/vmware-workstation/files/vmware-15.0.rc deleted file mode 100644 index b627869..0000000 --- a/app-emulation/vmware-workstation/files/vmware-15.0.rc +++ /dev/null @@ -1,102 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -depend() { - need localmount - use net -} - -start() { - ebegin Starting VMware USB Arbitrator - @@BINDIR@@/vmware-usbarbitrator - eend $? - ebegin Starting VMware services - - # vmci might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vmci) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vmci.ko \ - /lib/modules/$(uname -r)/kernel/drivers/misc/vmw_vmci/vmw_vmci.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -v $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vsock might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vsock_vmci_transport) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vsock.ko \ - /lib/modules/$(uname -r)/kernel/net/vmw_vsock/vmw_vsock_vmci_transport.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -v $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vmblock - if [[ -f /lib/modules/$(uname -r)/misc/vmblock.ko ]]; then - modprobe -v vmblock - eend $? - fi - - # vmci or vsock were already loaded by the previous modprobe, - # no need to do it here - # quiet for vmci because it may not be there - modprobe -av vmmon vmnet - eend $? - @@BINDIR@@/vmware-networks --start - eend $? -} - -stop() { - ebegin Stopping VMware USB Arbitrator - killall --wait vmware-usbarbitrator - eend $? - @@BINDIR@@/vmware-networks --stop - eend $? - ebegin Stopping VMware services - modprobe -rv vmmon vmnet - eend $? - - # vsock might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vsock_vmci_transport) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vsock.ko \ - /lib/modules/$(uname -r)/kernel/net/vmw_vsock/vmw_vsock_vmci_transport.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -rv $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vmci might be: - # 1) built as external kernel module - # 2) built as internal kernel module (with name vmw_vmci) - # 3) embedded in the kernel - for mod in /lib/modules/$(uname -r)/misc/vmci.ko \ - /lib/modules/$(uname -r)/kernel/drivers/misc/vmw_vmci/vmw_vmci.ko ; - do - if [[ -f "${mod}" ]] ; then - modprobe -rv $(basename "${mod}" .ko) - eend $? - break - fi - done - - # vmblock - if [[ -f /lib/modules/$(uname -r)/misc/vmblock.ko ]]; then - modprobe -rv vmblock - eend $? - fi -} diff --git a/app-emulation/vmware-workstation/files/vmware-server-14.1.rc b/app-emulation/vmware-workstation/files/vmware-server-14.1.rc deleted file mode 100644 index 8f9b7dd..0000000 --- a/app-emulation/vmware-workstation/files/vmware-server-14.1.rc +++ /dev/null @@ -1,52 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -depend() { - need localmount vmware - use net -} - -checkconfig() { - checkpath -d /var/run/vmware - - # 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 - checkpath -d -m 0600 @@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 - checkpath -f -m 0600 @@ETCDIR@@/ssl/rui.key @@ETCDIR@@/ssl/rui.crt - 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 - eend $? - ebegin Stopping VMware Authentication Daemon - killall --wait vmware-authdlauncher - eend $? -} diff --git a/app-emulation/vmware-workstation/files/vmware-server-15.0.rc b/app-emulation/vmware-workstation/files/vmware-server-15.0.rc deleted file mode 100644 index 8f9b7dd..0000000 --- a/app-emulation/vmware-workstation/files/vmware-server-15.0.rc +++ /dev/null @@ -1,52 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -depend() { - need localmount vmware - use net -} - -checkconfig() { - checkpath -d /var/run/vmware - - # 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 - checkpath -d -m 0600 @@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 - checkpath -f -m 0600 @@ETCDIR@@/ssl/rui.key @@ETCDIR@@/ssl/rui.crt - 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 - eend $? - ebegin Stopping VMware Authentication Daemon - killall --wait vmware-authdlauncher - eend $? -} diff --git a/app-emulation/vmware-workstation/vmware-workstation-14.1.5.10950780.ebuild b/app-emulation/vmware-workstation/vmware-workstation-14.1.5.10950780.ebuild deleted file mode 100644 index 5c510df..0000000 --- a/app-emulation/vmware-workstation/vmware-workstation-14.1.5.10950780.ebuild +++ /dev/null @@ -1,709 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eapi7-ver eutils readme.gentoo-r1 gnome2-utils pam systemd xdg-utils - -MY_PN="VMware-Workstation-Full" -MY_PV=$(ver_cut 1-3) -PV_MODULES="329.$(ver_cut 2-3)" -PV_BUILD=$(ver_cut 4) -MY_P="${MY_PN}-${MY_PV}-${PV_BUILD}" -VMWARE_FUSION_VER="10.$(ver_cut 2-3)/10950653" # https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/ -SYSTEMD_UNITS_TAG="gentoo-02" - -DESCRIPTION="Emulate a complete PC without the performance overhead of most emulators" -HOMEPAGE="http://www.vmware.com/products/workstation/" -SRC_URI=" - https://download3.vmware.com/software/wkst/file/${MY_P}.x86_64.bundle - macos-guests? ( - https://github.com/DrDonk/unlocker/archive/3.0.2.tar.gz -> unlocker-3.0.2.tar.gz - vmware-tools-darwinPre15? ( https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/${VMWARE_FUSION_VER}/packages/com.vmware.fusion.tools.darwinPre15.zip.tar -> com.vmware.fusion.tools.darwinPre15-${PV}.zip.tar ) - vmware-tools-darwin? ( https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/${VMWARE_FUSION_VER}/packages/com.vmware.fusion.tools.darwin.zip.tar -> com.vmware.fusion.tools.darwin-${PV}.zip.tar ) - ) - systemd? ( https://github.com/akhuettel/systemd-vmware/archive/${SYSTEMD_UNITS_TAG}.tar.gz -> vmware-systemd-${SYSTEMD_UNITS_TAG}.tgz ) - " - -LICENSE="GPL-2 GPL-3 MIT-with-advertising vmware" -SLOT="0" -KEYWORDS="~amd64" -IUSE="bundled-libs cups doc macos-guests +modules ovftool server systemd vix" -DARWIN_GUESTS="darwin darwinPre15" -IUSE_VMWARE_GUESTS="${DARWIN_GUESTS} linux linuxPreGlibc25 netware solaris windows winPre2k winPreVista" -for guest in ${IUSE_VMWARE_GUESTS}; do - IUSE+=" vmware-tools-${guest}" -done -REQUIRED_USE=" - server? ( modules ) - vmware-tools-darwin? ( macos-guests ) - vmware-tools-darwinPre15? ( macos-guests ) -" -RESTRICT="mirror strip" - -BUNDLED_LIBS_DIR=/opt/vmware/lib/vmware/lib - -BUNDLED_LIBS=" - libX11.so.6 - libXau.so.6 - libxcb.so.1 - libXcomposite.so.1 - libXcursor.so.1 - libXdamage.so.1 - libXdmcp.so.6 - libXext.so.6 - libXfixes.so.3 - libXft.so.2 - libXinerama.so.1 - libXi.so.6 - libXrandr.so.2 - libXrender.so.1 - libXtst.so.6 - libaio.so.1 - libatk-1.0.so.0 - libatk-bridge-2.0.so.0 - libatspi.so.0 - libcairo.so.2 - libcairo-gobject.so.2 - libcroco-0.6.so.3 - libcrypto.so.1.0.2 - libcurl.so.4 - libdbus-1.so.3 - libepoxy.so.0 - libexpat.so.1 - libffi.so.6 - libfontconfig.so.1 - libfreetype.so.6 - libfuse.so.2 - libgailutil-3.so.0 - libgcc_s.so.1 - libgck-1.so.0 - libgcr-base-3.so.1 - libgcr-ui-3.so.1 - libgcrypt.so.20 - libgdk-3.so.0 - libgdk_pixbuf-2.0.so.0 - libgio-2.0.so.0 - libglib-2.0.so.0 - libgmodule-2.0.so.0 - libgobject-2.0.so.0 - libgpg-error.so.0 - libgthread-2.0.so.0 - libgtk-3.so.0 - libharfbuzz.so.0 - libICE.so.6 - libjpeg.so.62 - libp11-kit.so.0 - libpango-1.0.so.0 - libpangocairo-1.0.so.0 - libpangoft2-1.0.so.0 - libpcre.so.1 - libpcsclite.so.1 - libpixman-1.so.0 - libpng12.so.0 - librsvg-2.so.2 - libsigc-2.0.so.0 - libSM.so.6 - libssl.so.1.0.2 - libstdc++.so.6 - libtasn1.so.6 - libtiff.so.5 - libxml2.so.2 - libz.so.1 -" - -BUNDLED_LIB_DEPENDS=" - app-accessibility/at-spi2-atk - app-accessibility/at-spi2-core - app-crypt/gcr[gtk] - app-crypt/p11-kit - dev-cpp/gtkmm:3.0 - dev-libs/atk - dev-libs/expat - dev-libs/glib:2 - dev-libs/libaio - dev-libs/libcroco - dev-libs/libffi - dev-libs/libgcrypt:0/20 - dev-libs/libgpg-error - dev-libs/libpcre - dev-libs/libsigc++:2 - dev-libs/libtasn1:0/6 - dev-libs/libxml2 - dev-libs/openssl:0 - gnome-base/librsvg:2 - media-libs/fontconfig - media-libs/freetype - media-libs/harfbuzz:0/0.9.18 - media-libs/libepoxy - media-libs/libpng:1.2 - media-libs/tiff:0 - net-misc/curl - sys-apps/dbus - sys-apps/pcsc-lite - sys-fs/fuse - sys-libs/zlib - virtual/jpeg:62 - x11-libs/cairo[glib] - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libICE - 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/pixman -" - -# vmware should not use virtual/libc as this is a -# precompiled binary package thats linked to glibc. -RDEPEND=" - app-arch/bzip2 - app-arch/unzip - app-shells/bash - dev-db/sqlite:3 - dev-libs/dbus-glib - dev-libs/gmp:0 - dev-libs/icu - dev-libs/json-c - dev-libs/nettle:0/6.2 - gnome-base/gconf - gnome-base/libgnome-keyring - media-gfx/graphite2 - media-libs/alsa-lib - media-libs/libart_lgpl - media-libs/libvorbis - media-libs/mesa - media-plugins/alsa-plugins[speex] - net-dns/libidn - net-libs/gnutls - cups? ( net-print/cups ) - sys-apps/tcp-wrappers - sys-apps/util-linux - x11-libs/libXxf86vm - x11-libs/libdrm - x11-libs/libxshmfence - x11-libs/startup-notification - x11-libs/xcb-util - x11-themes/hicolor-icon-theme - bundled-libs? ( media-libs/tiff:3 ) - !bundled-libs? ( ${BUNDLED_LIB_DEPENDS} ) - !app-emulation/vmware-player - !app-emulation/vmware-tools -" -PDEPEND=" - modules? ( ~app-emulation/vmware-modules-${PV_MODULES} ) -" -DEPEND=" - dev-lang/python:2.7 - >=dev-util/patchelf-0.9 - ovftool? ( app-admin/chrpath ) - sys-libs/ncurses:5 - sys-libs/readline:0 -" - -S=${WORKDIR}/extracted -VM_INSTALL_DIR="/opt/vmware" -VM_DATA_STORE_DIR="/var/lib/vmware/Shared VMs" -VM_HOSTD_USER="root" - -QA_PREBUILT="/opt/*" - -QA_WX_LOAD="opt/vmware/lib/vmware/tools-upgraders/vmware-tools-upgrader-32 opt/vmware/lib/vmware/bin/vmware-vmx-stats opt/vmware/lib/vmware/bin/vmware-vmx-debug opt/vmware/lib/vmware/bin/vmware-vmx" -# adding "opt/vmware/lib/vmware/lib/libvmware-gksu.so/libvmware-gksu.so" to QA_WX_LOAD doesn't work - -src_unpack() { - for a in ${A}; do - if [ ${a##*.} == 'bundle' ]; then - cp "${DISTDIR}/${a}" "${WORKDIR}" - else - unpack ${a} - fi - done - - local bundle="${MY_P}.x86_64.bundle" - chmod 755 "${bundle}" - # this needs a /tmp mounted without "noexec" because it extracts and executes scripts in there - ./${bundle} --console --required --eulas-agreed --extract=extracted || die "unable to extract bundle" - - if ! use ovftool; then - rm -r extracted/vmware-ovftool || die "unable to remove dir" - fi - - if ! use server; then - rm -r extracted/vmware-workstation-server || die "unable to remove dir" - fi - - if ! use vix; then - rm -r extracted/vmware-vix-core extracted/vmware-vix-lib-Workstation* || die "unable to remove dir" - fi - - for guest in ${DARWIN_GUESTS}; do - if use vmware-tools-${guest}; then - mkdir extracted/vmware-tools-${guest} - unzip -q com.vmware.fusion.tools.${guest}.zip payload/\* - mv payload/* extracted/vmware-tools-${guest}/ - rm -r payload com.vmware.fusion.tools.${guest}.zip - fi - done -} - -clean_bundled_libs() { - einfo "Removing bundled libraries" - for libname in ${BUNDLED_LIBS} ; do - rm -rf "${S}"/*/lib/lib/${libname} - done - - rm -rf "${S}"/*/lib/libconf - - # Among the bundled libs there are libcrypto.so.1.0.2 and libssl.so.1.0.2 - # (needed by libcds.so) which seem to be compiled from openssl-1.0.1l. - # Upstream real sonames are *so.1.0.0 so it's necessary to fix DT_NEEDED link - # in libcds.so to be able to use system libs. - pushd >/dev/null . - einfo "Patching libcds.so" - for d in "${S}"/*/lib/lib/libcds.so; do - cd "${d}" || die - patchelf --replace-needed libssl.so.1.0.{2,0} \ - --replace-needed libcrypto.so.1.0.{2,0} \ - libcds.so || die - cd - >/dev/null - done -} - -src_prepare() { - default - - rm -f */bin/vmware-modconfig - rm -rf */lib/modules/binary - # Bug 459566 - mkdir vmware-network-editor/lib/lib - mv vmware-network-editor/lib/libvmware-netcfg.so vmware-network-editor/lib/lib/ - - if use server; then - rm -f vmware-workstation-server/bin/{openssl,configure-hostd.sh} - fi - - if ! use bundled-libs ; then - clean_bundled_libs - fi - - if use ovftool; then - chrpath -d vmware-ovftool/libcurl.so.4 - fi - - if use macos-guests; then - sed -i -e "s#vmx_path = '/usr#vmx_path = '${D}${VM_INSTALL_DIR//\//\\/}#" \ - -e "s#os\.path\.isfile('/usr#os.path.isfile('${D}${VM_INSTALL_DIR//\//\\/}#" \ - -e "s#vmwarebase = '/usr#vmwarebase = '${D}${VM_INSTALL_DIR//\//\\/}#" \ - "${WORKDIR}"/unlocker-*/unlocker.py - fi - - DOC_CONTENTS=" -/etc/env.d is updated during ${PN} installation. Please run:\n -'env-update && source /etc/profile'\n -Before you can use ${PN}, you must configure a default network setup. -You can do this by running 'emerge --config ${PN}'.\n -To be able to run ${PN} your user must be in the vmware group.\n -" -} - -src_install() { - local major_minor=$(ver_cut 1-2 "${PV}") - local vmware_installer_version=$(cat "${S}/vmware-installer/manifest.xml" | grep -oPm1 "(?<=)[^<]+") - - # revdep-rebuild entry - insinto /etc/revdep-rebuild - echo "SEARCH_DIRS_MASK=\"${VM_INSTALL_DIR}\"" >> ${T}/10${PN} - doins "${T}"/10${PN} - - # install the binaries - into "${VM_INSTALL_DIR}" - dobin */bin/* - dosbin */sbin/* - - # install the libraries - insinto "${VM_INSTALL_DIR}"/lib/vmware - doins -r */lib/* vmware-vmx/roms - 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 - - # workaround for hardcoded search paths needed during shared objects loading - if ! use bundled-libs ; then - dosym ../../../../../../usr/$(get_libdir)/libglib-2.0.so.0 \ - "${VM_INSTALL_DIR}"/lib/vmware/lib/libglib-2.0.so.0/libglib-2.0.so.0 - # Bug 432918 - dosym ../../../../../../usr/$(get_libdir)/libcrypto.so.1.0.0 \ - "${VM_INSTALL_DIR}"/lib/vmware/lib/libcrypto.so.1.0.2/libcrypto.so.1.0.2 - dosym ../../../../../../usr/$(get_libdir)/libssl.so.1.0.0 \ - "${VM_INSTALL_DIR}"/lib/vmware/lib/libssl.so.1.0.2/libssl.so.1.0.2 - fi - - # 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 - - if use doc; then - dodoc -r */doc/* - fi - - exeinto "${VM_INSTALL_DIR}"/lib/vmware/setup - doexe */vmware-config - - # pam - pamd_mimic_system vmware-authd auth account - - # fuse - insinto /etc/modprobe.d - newins vmware-vmx/etc/modprobe.d/modprobe-vmware-fuse.conf vmware-fuse.conf - - # install vmware workstation server - if use server; then - cd "${S}"/vmware-workstation-server - - # install binaries - into "${VM_INSTALL_DIR}"/lib/vmware - dobin "${FILESDIR}"/configure-hostd.sh - - # install the libraries - insinto "${VM_INSTALL_DIR}"/lib/vmware/lib - doins -r lib/* - - into "${VM_INSTALL_DIR}" - for tool in vmware-hostd wssc-adminTool ; do - cat > "${T}/${tool}" <<-EOF - #!/usr/bin/env bash - set -e - - . /etc/vmware/bootstrap - - exec "${VM_INSTALL_DIR}/lib/vmware/bin/${tool}" \\ - "\$@" - EOF - dobin "${T}/${tool}" - done - - insinto "${VM_INSTALL_DIR}"/lib/vmware - doins -r hostd - - # create the configuration - insinto /etc/vmware - doins -r config/etc/vmware/* - doins -r etc/vmware/* - - # create directory for shared virtual machines. - keepdir "${VM_DATA_STORE_DIR}" - keepdir /var/log/vmware - - cd - >/dev/null - fi - - # install vmware-vix - if use vix; then - # install the binary - into "${VM_INSTALL_DIR}" - dobin "$S"/vmware-vix-*/bin/* - - # install the libraries - insinto "${VM_INSTALL_DIR}"/lib/vmware-vix - doins -r "$S"/vmware-vix-*/lib/* - - dosym vmware-vix/libvixAllProducts.so "${VM_INSTALL_DIR}"/lib/libbvixAllProducts.so - - # install headers - insinto /usr/include/vmware-vix - doins "$S"/vmware-vix-*/include/* - - if use doc; then - dodoc -r "$S"/vmware-vix-*/doc/* - fi - fi - - # install ovftool - if use ovftool; then - cd "${S}"/vmware-ovftool - - insinto "${VM_INSTALL_DIR}"/lib/vmware-ovftool - doins -r * - - 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 - - cd - >/dev/null - fi - - # create symlinks for the various tools - local tool ; for tool in thnuclnt vmware vmplayer{,-daemon} licenseTool vmamqpd \ - vmware-{app-control,enter-serial,gksu,fuseUI,hostd,modconfig{,-console},netcfg,tray,unity-helper,vim-cmd,vmblock-fuse,vprobe,wssc-adminTool,zenity} ; 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 - - # fix permissions - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/bin/{appLoader,fusermount,mkisofs,vmware-remotemks} - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/setup/vmware-config - fperms 4711 "${VM_INSTALL_DIR}"/lib/vmware/bin/vmware-vmx{,-debug,-stats} - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/lib/libvmware-gksu.so/gksu-run-helper - fperms 4711 "${VM_INSTALL_DIR}"/sbin/vmware-authd - if use server; then - fperms 0755 "${VM_INSTALL_DIR}"/bin/{vmware-hostd,wssc-adminTool} - fperms 1777 "${VM_DATA_STORE_DIR}" - fi - if use vix; then - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware-vix/setup/vmware-config - fi - - # create the environment - local envd="${T}/90vmware" - cat > "${envd}" <<-EOF - PATH='${VM_INSTALL_DIR}/bin' - ROOTPATH='${VM_INSTALL_DIR}/bin' - CONFIG_PROTECT_MASK='/etc/vmware-installer' - EOF - use bundled-libs && echo 'VMWARE_USE_SHIPPED_LIBS=1' >> "${envd}" - - 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 - .encoding = "UTF-8" - 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 = "${MY_PV}" - product.buildNumber = "${PV_BUILD}" - product.version = "${MY_PV}" - product.name = "VMware Workstation" - workstation.product.version = "${MY_PV}" - vmware.fullpath = "${VM_INSTALL_DIR}/bin/vmware" - installerDefaults.componentDownloadEnabled = "no" - installerDefaults.autoSoftwareUpdateEnabled.epoch = "4641104763" - installerDefaults.dataCollectionEnabled.epoch = "7910652514" - installerDefaults.dataCollectionEnabled = "no" - installerDefaults.transferVersion = "1" - installerDefaults.autoSoftwareUpdateEnabled = "no" - EOF - - if use vix; then - cat >> "${D}"/etc/vmware/config <<-EOF - 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 - - if use modules; then - # 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}" || die - newinitd "${initscript}" vmware - fi - - 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-${major_minor}.rc" > ${initscript} || die - newinitd "${initscript}" vmware-workstation-server - fi - - # fill in variable placeholders - if use bundled-libs ; then - sed -e "s:@@LIBCONF_DIR@@:${VM_INSTALL_DIR}/lib/vmware/libconf:g" \ - -i "${D}${VM_INSTALL_DIR}"/lib/vmware/libconf/etc/gtk-3.0/gdk-pixbuf.loaders || die - fi - sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmplayer:g" \ - -e "/^Encoding/d" \ - -i "${D}/usr/share/applications/vmware-player.desktop" || die - sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmware:g" \ - -e "/^Encoding/d" \ - -i "${D}/usr/share/applications/vmware-workstation.desktop" || die - sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmware-netcfg:g" \ - -e "/^Encoding/d" \ - -i "${D}/usr/share/applications/vmware-netcfg.desktop" || die - - 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_HOSTSPECSVC}##: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}##:false:g" \ - -e "s:##{USE_STATSSVC_MOCKUP}##:false:g" \ - -e "s:##{USE_VCSVC_MOCKUP}##:false:g" \ - -e "s:##{USE_VSLMSVC}##:false:g" \ - -e "s:##{USE_VSLMSVC_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 - - # install systemd unit files - if use systemd; then - systemd_dounit "${WORKDIR}/systemd-vmware-${SYSTEMD_UNITS_TAG}/"*.{service,target} - fi - - # enable macOS guests support - if use macos-guests; then - python2 "${WORKDIR}"/unlocker-*/unlocker.py >/dev/null || die "unlocker.py failed" - fi - - # VMware tools - for guest in ${IUSE_VMWARE_GUESTS}; do - if use vmware-tools-${guest}; then - local dbfile="${D}/etc/vmware-installer/database" - if ! [ -e "${dbfile}" ]; then - > "${dbfile}" - sqlite3 "${dbfile}" "CREATE TABLE settings(key VARCHAR PRIMARY KEY, value VARCHAR NOT NULL, component_name VARCHAR NOT NULL);" - sqlite3 "${dbfile}" "INSERT INTO settings(key,value,component_name) VALUES('db.schemaVersion','2','vmware-installer');" - sqlite3 "${dbfile}" "CREATE TABLE components(id INTEGER PRIMARY KEY, name VARCHAR NOT NULL, version VARCHAR NOT NULL, buildNumber INTEGER NOT NULL, component_core_id INTEGER NOT NULL, longName VARCHAR NOT NULL, description VARCHAR, type INTEGER NOT NULL);" - fi - local manifest="vmware-tools-${guest}/manifest.xml" - if [ -e "${manifest}" ]; then - local version="$(grep -oPm1 '(?<=)[^<]+' ${manifest})" - sqlite3 "${dbfile}" "INSERT INTO components(name,version,buildNumber,component_core_id,longName,description,type) VALUES(\"vmware-tools-$guest\",\"$version\",\"${PV_BUILD}\",1,\"$guest\",\"$guest\",1);" - else - sqlite3 "${dbfile}" "INSERT INTO components(name,version,buildNumber,component_core_id,longName,description,type) VALUES(\"vmware-tools-$guest\",\"${VMWARE_FUSION_VER%/*}\",\"${VMWARE_FUSION_VER#*/}\",1,\"$guest\",\"$guest\",1);" - fi - insinto "${VM_INSTALL_DIR}/lib/vmware/isoimages" - doins vmware-tools-${guest}/${guest}.iso - doins vmware-tools-${guest}/${guest}.iso.sig - fi - done - - readme.gentoo_create_doc -} - -pkg_config() { - "${VM_INSTALL_DIR}"/bin/vmware-networks --postinstall ${PN},old,new -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postinst() { - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update - readme.gentoo_print_elog -} - -pkg_postrm() { - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update -} diff --git a/app-emulation/vmware-workstation/vmware-workstation-15.0.2.10952284.ebuild b/app-emulation/vmware-workstation/vmware-workstation-15.0.2.10952284.ebuild deleted file mode 100644 index 6352b01..0000000 --- a/app-emulation/vmware-workstation/vmware-workstation-15.0.2.10952284.ebuild +++ /dev/null @@ -1,709 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eapi7-ver eutils readme.gentoo-r1 gnome2-utils pam systemd xdg-utils - -MY_PN="VMware-Workstation-Full" -MY_PV=$(ver_cut 1-3) -PV_MODULES="330.$(ver_cut 2-3)" -PV_BUILD=$(ver_cut 4) -MY_P="${MY_PN}-${MY_PV}-${PV_BUILD}" -VMWARE_FUSION_VER="11.$(ver_cut 2-3)/10952296" # https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/ -SYSTEMD_UNITS_TAG="gentoo-02" - -DESCRIPTION="Emulate a complete PC without the performance overhead of most emulators" -HOMEPAGE="http://www.vmware.com/products/workstation/" -SRC_URI=" - https://download3.vmware.com/software/wkst/file/${MY_P}.x86_64.bundle - macos-guests? ( - https://github.com/DrDonk/unlocker/archive/3.0.2.tar.gz -> unlocker-3.0.2.tar.gz - vmware-tools-darwinPre15? ( https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/${VMWARE_FUSION_VER}/packages/com.vmware.fusion.tools.darwinPre15.zip.tar -> com.vmware.fusion.tools.darwinPre15-${PV}.zip.tar ) - vmware-tools-darwin? ( https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/${VMWARE_FUSION_VER}/packages/com.vmware.fusion.tools.darwin.zip.tar -> com.vmware.fusion.tools.darwin-${PV}.zip.tar ) - ) - systemd? ( https://github.com/akhuettel/systemd-vmware/archive/${SYSTEMD_UNITS_TAG}.tar.gz -> vmware-systemd-${SYSTEMD_UNITS_TAG}.tgz ) - " - -LICENSE="GPL-2 GPL-3 MIT-with-advertising vmware" -SLOT="0" -KEYWORDS="~amd64" -IUSE="bundled-libs cups doc macos-guests +modules ovftool server systemd vix" -DARWIN_GUESTS="darwin darwinPre15" -IUSE_VMWARE_GUESTS="${DARWIN_GUESTS} linux linuxPreGlibc25 netware solaris windows winPre2k winPreVista" -for guest in ${IUSE_VMWARE_GUESTS}; do - IUSE+=" vmware-tools-${guest}" -done -REQUIRED_USE=" - server? ( modules ) - vmware-tools-darwin? ( macos-guests ) - vmware-tools-darwinPre15? ( macos-guests ) -" -RESTRICT="mirror strip" - -BUNDLED_LIBS_DIR=/opt/vmware/lib/vmware/lib - -BUNDLED_LIBS=" - libX11.so.6 - libXau.so.6 - libxcb.so.1 - libXcomposite.so.1 - libXcursor.so.1 - libXdamage.so.1 - libXdmcp.so.6 - libXext.so.6 - libXfixes.so.3 - libXft.so.2 - libXinerama.so.1 - libXi.so.6 - libXrandr.so.2 - libXrender.so.1 - libXtst.so.6 - libaio.so.1 - libatk-1.0.so.0 - libatk-bridge-2.0.so.0 - libatspi.so.0 - libcairo.so.2 - libcairo-gobject.so.2 - libcroco-0.6.so.3 - libcrypto.so.1.0.2 - libcurl.so.4 - libdbus-1.so.3 - libepoxy.so.0 - libexpat.so.1 - libffi.so.6 - libfontconfig.so.1 - libfreetype.so.6 - libfuse.so.2 - libgailutil-3.so.0 - libgcc_s.so.1 - libgck-1.so.0 - libgcr-base-3.so.1 - libgcr-ui-3.so.1 - libgcrypt.so.20 - libgdk-3.so.0 - libgdk_pixbuf-2.0.so.0 - libgio-2.0.so.0 - libglib-2.0.so.0 - libgmodule-2.0.so.0 - libgobject-2.0.so.0 - libgpg-error.so.0 - libgthread-2.0.so.0 - libgtk-3.so.0 - libharfbuzz.so.0 - libICE.so.6 - libjpeg.so.62 - libp11-kit.so.0 - libpango-1.0.so.0 - libpangocairo-1.0.so.0 - libpangoft2-1.0.so.0 - libpcre.so.1 - libpcsclite.so.1 - libpixman-1.so.0 - libpng12.so.0 - librsvg-2.so.2 - libsigc-2.0.so.0 - libSM.so.6 - libssl.so.1.0.2 - libstdc++.so.6 - libtasn1.so.6 - libtiff.so.5 - libxml2.so.2 - libz.so.1 -" - -BUNDLED_LIB_DEPENDS=" - app-accessibility/at-spi2-atk - app-accessibility/at-spi2-core - app-crypt/gcr[gtk] - app-crypt/p11-kit - dev-cpp/gtkmm:3.0 - dev-libs/atk - dev-libs/expat - dev-libs/glib:2 - dev-libs/libaio - dev-libs/libcroco - dev-libs/libffi - dev-libs/libgcrypt:0/20 - dev-libs/libgpg-error - dev-libs/libpcre - dev-libs/libsigc++:2 - dev-libs/libtasn1:0/6 - dev-libs/libxml2 - dev-libs/openssl:0 - gnome-base/librsvg:2 - media-libs/fontconfig - media-libs/freetype - media-libs/harfbuzz:0/0.9.18 - media-libs/libepoxy - media-libs/libpng:1.2 - media-libs/tiff:0 - net-misc/curl - sys-apps/dbus - sys-apps/pcsc-lite - sys-fs/fuse - sys-libs/zlib - virtual/jpeg:62 - x11-libs/cairo[glib] - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libICE - 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/pixman -" - -# vmware should not use virtual/libc as this is a -# precompiled binary package thats linked to glibc. -RDEPEND=" - app-arch/bzip2 - app-arch/unzip - app-shells/bash - dev-db/sqlite:3 - dev-libs/dbus-glib - dev-libs/gmp:0 - dev-libs/icu - dev-libs/json-c - dev-libs/nettle:0/6.2 - gnome-base/gconf - gnome-base/libgnome-keyring - media-gfx/graphite2 - media-libs/alsa-lib - media-libs/libart_lgpl - media-libs/libvorbis - media-libs/mesa - media-plugins/alsa-plugins[speex] - net-dns/libidn - net-libs/gnutls - cups? ( net-print/cups ) - sys-apps/tcp-wrappers - sys-apps/util-linux - x11-libs/libXxf86vm - x11-libs/libdrm - x11-libs/libxshmfence - x11-libs/startup-notification - x11-libs/xcb-util - x11-themes/hicolor-icon-theme - bundled-libs? ( media-libs/tiff:3 ) - !bundled-libs? ( ${BUNDLED_LIB_DEPENDS} ) - !app-emulation/vmware-player - !app-emulation/vmware-tools -" -PDEPEND=" - modules? ( ~app-emulation/vmware-modules-${PV_MODULES} ) -" -DEPEND=" - dev-lang/python:2.7 - >=dev-util/patchelf-0.9 - ovftool? ( app-admin/chrpath ) - sys-libs/ncurses:5 - sys-libs/readline:0 -" - -S=${WORKDIR}/extracted -VM_INSTALL_DIR="/opt/vmware" -VM_DATA_STORE_DIR="/var/lib/vmware/Shared VMs" -VM_HOSTD_USER="root" - -QA_PREBUILT="/opt/*" - -QA_WX_LOAD="opt/vmware/lib/vmware/tools-upgraders/vmware-tools-upgrader-32 opt/vmware/lib/vmware/bin/vmware-vmx-stats opt/vmware/lib/vmware/bin/vmware-vmx-debug opt/vmware/lib/vmware/bin/vmware-vmx" -# adding "opt/vmware/lib/vmware/lib/libvmware-gksu.so/libvmware-gksu.so" to QA_WX_LOAD doesn't work - -src_unpack() { - for a in ${A}; do - if [ ${a##*.} == 'bundle' ]; then - cp "${DISTDIR}/${a}" "${WORKDIR}" - else - unpack ${a} - fi - done - - local bundle="${MY_P}.x86_64.bundle" - chmod 755 "${bundle}" - # this needs a /tmp mounted without "noexec" because it extracts and executes scripts in there - ./${bundle} --console --required --eulas-agreed --extract=extracted || die "unable to extract bundle" - - if ! use ovftool; then - rm -r extracted/vmware-ovftool || die "unable to remove dir" - fi - - if ! use server; then - rm -r extracted/vmware-workstation-server || die "unable to remove dir" - fi - - if ! use vix; then - rm -r extracted/vmware-vix-core extracted/vmware-vix-lib-Workstation* || die "unable to remove dir" - fi - - for guest in ${DARWIN_GUESTS}; do - if use vmware-tools-${guest}; then - mkdir extracted/vmware-tools-${guest} - unzip -q com.vmware.fusion.tools.${guest}.zip payload/\* - mv payload/* extracted/vmware-tools-${guest}/ - rm -r payload com.vmware.fusion.tools.${guest}.zip - fi - done -} - -clean_bundled_libs() { - einfo "Removing bundled libraries" - for libname in ${BUNDLED_LIBS} ; do - rm -rf "${S}"/*/lib/lib/${libname} - done - - rm -rf "${S}"/*/lib/libconf - - # Among the bundled libs there are libcrypto.so.1.0.2 and libssl.so.1.0.2 - # (needed by libcds.so) which seem to be compiled from openssl-1.0.1l. - # Upstream real sonames are *so.1.0.0 so it's necessary to fix DT_NEEDED link - # in libcds.so to be able to use system libs. - pushd >/dev/null . - einfo "Patching libcds.so" - for d in "${S}"/*/lib/lib/libcds.so; do - cd "${d}" || die - patchelf --replace-needed libssl.so.1.0.{2,0} \ - --replace-needed libcrypto.so.1.0.{2,0} \ - libcds.so || die - cd - >/dev/null - done -} - -src_prepare() { - default - - rm -f */bin/vmware-modconfig - rm -rf */lib/modules/binary - # Bug 459566 - mkdir vmware-network-editor/lib/lib - mv vmware-network-editor/lib/libvmware-netcfg.so vmware-network-editor/lib/lib/ - - if use server; then - rm -f vmware-workstation-server/bin/{openssl,configure-hostd.sh} - fi - - if ! use bundled-libs ; then - clean_bundled_libs - fi - - if use ovftool; then - chrpath -d vmware-ovftool/libcurl.so.4 - fi - - if use macos-guests; then - sed -i -e "s#vmx_path = '/usr#vmx_path = '${D}${VM_INSTALL_DIR//\//\\/}#" \ - -e "s#os\.path\.isfile('/usr#os.path.isfile('${D}${VM_INSTALL_DIR//\//\\/}#" \ - -e "s#vmwarebase = '/usr#vmwarebase = '${D}${VM_INSTALL_DIR//\//\\/}#" \ - "${WORKDIR}"/unlocker-*/unlocker.py - fi - - DOC_CONTENTS=" -/etc/env.d is updated during ${PN} installation. Please run:\n -'env-update && source /etc/profile'\n -Before you can use ${PN}, you must configure a default network setup. -You can do this by running 'emerge --config ${PN}'.\n -To be able to run ${PN} your user must be in the vmware group.\n -" -} - -src_install() { - local major_minor=$(ver_cut 1-2 "${PV}") - local vmware_installer_version=$(cat "${S}/vmware-installer/manifest.xml" | grep -oPm1 "(?<=)[^<]+") - - # revdep-rebuild entry - insinto /etc/revdep-rebuild - echo "SEARCH_DIRS_MASK=\"${VM_INSTALL_DIR}\"" >> ${T}/10${PN} - doins "${T}"/10${PN} - - # install the binaries - into "${VM_INSTALL_DIR}" - dobin */bin/* - dosbin */sbin/* - - # install the libraries - insinto "${VM_INSTALL_DIR}"/lib/vmware - doins -r */lib/* vmware-vmx/roms - 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 - - # workaround for hardcoded search paths needed during shared objects loading - if ! use bundled-libs ; then - dosym ../../../../../../usr/$(get_libdir)/libglib-2.0.so.0 \ - "${VM_INSTALL_DIR}"/lib/vmware/lib/libglib-2.0.so.0/libglib-2.0.so.0 - # Bug 432918 - dosym ../../../../../../usr/$(get_libdir)/libcrypto.so.1.0.0 \ - "${VM_INSTALL_DIR}"/lib/vmware/lib/libcrypto.so.1.0.2/libcrypto.so.1.0.2 - dosym ../../../../../../usr/$(get_libdir)/libssl.so.1.0.0 \ - "${VM_INSTALL_DIR}"/lib/vmware/lib/libssl.so.1.0.2/libssl.so.1.0.2 - fi - - # 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 - - if use doc; then - dodoc -r */doc/* - fi - - exeinto "${VM_INSTALL_DIR}"/lib/vmware/setup - doexe */vmware-config - - # pam - pamd_mimic_system vmware-authd auth account - - # fuse - insinto /etc/modprobe.d - newins vmware-vmx/etc/modprobe.d/modprobe-vmware-fuse.conf vmware-fuse.conf - - # install vmware workstation server - if use server; then - cd "${S}"/vmware-workstation-server - - # install binaries - into "${VM_INSTALL_DIR}"/lib/vmware - dobin "${FILESDIR}"/configure-hostd.sh - - # install the libraries - insinto "${VM_INSTALL_DIR}"/lib/vmware/lib - doins -r lib/* - - into "${VM_INSTALL_DIR}" - for tool in vmware-hostd wssc-adminTool ; do - cat > "${T}/${tool}" <<-EOF - #!/usr/bin/env bash - set -e - - . /etc/vmware/bootstrap - - exec "${VM_INSTALL_DIR}/lib/vmware/bin/${tool}" \\ - "\$@" - EOF - dobin "${T}/${tool}" - done - - insinto "${VM_INSTALL_DIR}"/lib/vmware - doins -r hostd - - # create the configuration - insinto /etc/vmware - doins -r config/etc/vmware/* - doins -r etc/vmware/* - - # create directory for shared virtual machines. - keepdir "${VM_DATA_STORE_DIR}" - keepdir /var/log/vmware - - cd - >/dev/null - fi - - # install vmware-vix - if use vix; then - # install the binary - into "${VM_INSTALL_DIR}" - dobin "$S"/vmware-vix-*/bin/* - - # install the libraries - insinto "${VM_INSTALL_DIR}"/lib/vmware-vix - doins -r "$S"/vmware-vix-*/lib/* - - dosym vmware-vix/libvixAllProducts.so "${VM_INSTALL_DIR}"/lib/libbvixAllProducts.so - - # install headers - insinto /usr/include/vmware-vix - doins "$S"/vmware-vix-*/include/* - - if use doc; then - dodoc -r "$S"/vmware-vix-*/doc/* - fi - fi - - # install ovftool - if use ovftool; then - cd "${S}"/vmware-ovftool - - insinto "${VM_INSTALL_DIR}"/lib/vmware-ovftool - doins -r * - - 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 - - cd - >/dev/null - fi - - # create symlinks for the various tools - local tool ; for tool in thnuclnt vmware vmplayer{,-daemon} licenseTool vmamqpd \ - vmware-{app-control,enter-serial,gksu,fuseUI,hostd,modconfig{,-console},netcfg,tray,unity-helper,vim-cmd,vmblock-fuse,vprobe,wssc-adminTool,zenity} ; 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 - - # fix permissions - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/bin/{appLoader,fusermount,mkisofs,vmware-remotemks} - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/setup/vmware-config - fperms 4711 "${VM_INSTALL_DIR}"/lib/vmware/bin/vmware-vmx{,-debug,-stats} - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware/lib/libvmware-gksu.so/gksu-run-helper - fperms 4711 "${VM_INSTALL_DIR}"/sbin/vmware-authd - if use server; then - fperms 0755 "${VM_INSTALL_DIR}"/bin/{vmware-hostd,wssc-adminTool} - fperms 1777 "${VM_DATA_STORE_DIR}" - fi - if use vix; then - fperms 0755 "${VM_INSTALL_DIR}"/lib/vmware-vix/setup/vmware-config - fi - - # create the environment - local envd="${T}/90vmware" - cat > "${envd}" <<-EOF - PATH='${VM_INSTALL_DIR}/bin' - ROOTPATH='${VM_INSTALL_DIR}/bin' - CONFIG_PROTECT_MASK='/etc/vmware-installer' - EOF - use bundled-libs && echo 'VMWARE_USE_SHIPPED_LIBS=1' >> "${envd}" - - 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 - .encoding = "UTF-8" - 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 = "${MY_PV}" - product.buildNumber = "${PV_BUILD}" - product.version = "${MY_PV}" - product.name = "VMware Workstation" - workstation.product.version = "${MY_PV}" - vmware.fullpath = "${VM_INSTALL_DIR}/bin/vmware" - installerDefaults.componentDownloadEnabled = "no" - installerDefaults.autoSoftwareUpdateEnabled.epoch = "4641104763" - installerDefaults.dataCollectionEnabled.epoch = "7910652514" - installerDefaults.dataCollectionEnabled = "no" - installerDefaults.transferVersion = "1" - installerDefaults.autoSoftwareUpdateEnabled = "no" - EOF - - if use vix; then - cat >> "${D}"/etc/vmware/config <<-EOF - 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 - - if use modules; then - # 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}" || die - newinitd "${initscript}" vmware - fi - - 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-${major_minor}.rc" > ${initscript} || die - newinitd "${initscript}" vmware-workstation-server - fi - - # fill in variable placeholders - if use bundled-libs ; then - sed -e "s:@@LIBCONF_DIR@@:${VM_INSTALL_DIR}/lib/vmware/libconf:g" \ - -i "${D}${VM_INSTALL_DIR}"/lib/vmware/libconf/etc/gtk-3.0/gdk-pixbuf.loaders || die - fi - sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmplayer:g" \ - -e "/^Encoding/d" \ - -i "${D}/usr/share/applications/vmware-player.desktop" || die - sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmware:g" \ - -e "/^Encoding/d" \ - -i "${D}/usr/share/applications/vmware-workstation.desktop" || die - sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmware-netcfg:g" \ - -e "/^Encoding/d" \ - -i "${D}/usr/share/applications/vmware-netcfg.desktop" || die - - 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_HOSTSPECSVC}##: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}##:false:g" \ - -e "s:##{USE_STATSSVC_MOCKUP}##:false:g" \ - -e "s:##{USE_VCSVC_MOCKUP}##:false:g" \ - -e "s:##{USE_VSLMSVC}##:false:g" \ - -e "s:##{USE_VSLMSVC_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 - - # install systemd unit files - if use systemd; then - systemd_dounit "${WORKDIR}/systemd-vmware-${SYSTEMD_UNITS_TAG}/"*.{service,target} - fi - - # enable macOS guests support - if use macos-guests; then - python2 "${WORKDIR}"/unlocker-*/unlocker.py >/dev/null || die "unlocker.py failed" - fi - - # VMware tools - for guest in ${IUSE_VMWARE_GUESTS}; do - if use vmware-tools-${guest}; then - local dbfile="${D}/etc/vmware-installer/database" - if ! [ -e "${dbfile}" ]; then - > "${dbfile}" - sqlite3 "${dbfile}" "CREATE TABLE settings(key VARCHAR PRIMARY KEY, value VARCHAR NOT NULL, component_name VARCHAR NOT NULL);" - sqlite3 "${dbfile}" "INSERT INTO settings(key,value,component_name) VALUES('db.schemaVersion','2','vmware-installer');" - sqlite3 "${dbfile}" "CREATE TABLE components(id INTEGER PRIMARY KEY, name VARCHAR NOT NULL, version VARCHAR NOT NULL, buildNumber INTEGER NOT NULL, component_core_id INTEGER NOT NULL, longName VARCHAR NOT NULL, description VARCHAR, type INTEGER NOT NULL);" - fi - local manifest="vmware-tools-${guest}/manifest.xml" - if [ -e "${manifest}" ]; then - local version="$(grep -oPm1 '(?<=)[^<]+' ${manifest})" - sqlite3 "${dbfile}" "INSERT INTO components(name,version,buildNumber,component_core_id,longName,description,type) VALUES(\"vmware-tools-$guest\",\"$version\",\"${PV_BUILD}\",1,\"$guest\",\"$guest\",1);" - else - sqlite3 "${dbfile}" "INSERT INTO components(name,version,buildNumber,component_core_id,longName,description,type) VALUES(\"vmware-tools-$guest\",\"${VMWARE_FUSION_VER%/*}\",\"${VMWARE_FUSION_VER#*/}\",1,\"$guest\",\"$guest\",1);" - fi - insinto "${VM_INSTALL_DIR}/lib/vmware/isoimages" - doins vmware-tools-${guest}/${guest}.iso - doins vmware-tools-${guest}/${guest}.iso.sig - fi - done - - readme.gentoo_create_doc -} - -pkg_config() { - "${VM_INSTALL_DIR}"/bin/vmware-networks --postinstall ${PN},old,new -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postinst() { - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update - readme.gentoo_print_elog -} - -pkg_postrm() { - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update -}