gentoo / vmware

[MIRROR] VMware desktop ebuilds
https://gitweb.gentoo.org/proj/vmware.git
22 stars 18 forks source link

updated to latest kernel 4.2 and version 12 of player and ws #15

Closed efferre79 closed 8 years ago

efferre79 commented 8 years ago

Hi Andreas, I have changed the vmware repository to keep it updated with latest software available upstream, so it supports kernel 4.2 and version 12 of vmware-player and vmware-workstation. I have added support to kernel 4.2 only for last two releases of modules, i.e 304 and 308. I have removed two patches from vmware-modules/files because they didn't apply anymore (and they were already commented in the ebuild of version 304.

The last version of vmware products ships with bundle files that contain compressed files with size 0 so I had to modify the eclass to manage this new issue. The new eclass was added to the repository too.

hrk commented 8 years ago

@efferre79 maybe there's still something left to fix :) After today's emerge sync && emerge world && emerge --depclean, I get...

!!! existing preserved libs:
>>> package: x11-libs/libgksu-2.0.12-r2
 *  - /usr/lib64/libgksu2.so.0
 *  - /usr/lib64/libgksu2.so.0.0.2
 *      used by /opt/vmware/lib/vmware/lib/libvmware-gksu.so/libvmware-gksu.so (app-emulation/vmware-workstation-12.1.0.3272444-r1)
>>> package: gnome-base/libgtop-2.32.0
 *  - /usr/lib64/libgtop-2.0.so.10
 *  - /usr/lib64/libgtop-2.0.so.10.0.0
 *      used by /usr/lib64/libgksu2.so.0 (preserved)
 *      used by /usr/lib64/libgksu2.so.0.0.2 (preserved)
Use emerge @preserved-rebuild to rebuild packages using these libraries
efferre79 commented 8 years ago

with latest commit, with -bundled-libs I started using again the bundled version of libgksu2.so.0 and libgtop-2.0.so.10, see https://github.com/efferre79/vmware/commit/c6d45fdfc7ba3f7c7459c8e2369bb294681c9ffb. The emerge notice means x11-libs/libgksu and gnome-base/libgtop are not anymore referenced by any other package and probably you don't need them in your system so you can safely delete the libs. Before proceeding try to run 'equery d x11-libs/libgksu' and 'equery d gnome-base/libgtop', I guess you should get an empty list

hrk commented 8 years ago

I could be wrong, so feel free to correct me, but I don't trust "equery" as it is simply a parser for the DEPEND/RDEPEND values in ebuilds, whereas that emerge message clearly tells me that a very specific file is (dinamically) linked to those libs and requires them. Running ldd against it, confirms that it's linked to the files in /usr/lib64/

efferre79 commented 8 years ago

The problem is that vmware is able both to load bundled libs and system libs. So yes, it's correct what you observe with ldd but it doesn't matter because it will not lead to a failure, vmware uses also dlopen(). With the lastest version of vmware-workstation w/ or w/o bundled-libs libgksu2.so.0 and libgtop-2.0.so.10 are always bundled. If you're using the system one then it doesn't work properly (see https://bugs.gentoo.org/show_bug.cgi?id=559798#c86) because the bundled version is a custom patched version of upstream .... This is the problem of using binary (badly written) software :-(

vmware-workstation need lingksu.so to enter the license key. On my system I have just removed the x11-libs/libgksu package so I have the same error message you report above but the library has been removed (/usr/lib64/libgksu2.so doesn't exist). Running vmware-workstation I see this log:

vmware-apploader-22520.log:2016-03-17T15:35:57.500+01:00| appLoader| I125: Invocation: "/opt/vmware/lib/vmware/bin/vmware-gksu --su-mode --message=Please enter the root password to proceed. '/opt/vmware/lib/vmware/bin/vmware-enter-serial' -n 'VMware Workstation' -v '12.0'" vmware-apploader-22520.log:2016-03-17T15:35:57.500+01:00| appLoader| I125: Calling: "/opt/vmware/lib/vmware/bin/vmware-gksu --su-mode --message=Please enter the root password to proceed. '/opt/vmware/lib/vmware/bin/vmware-enter-serial' -n 'VMware Workstation' -v '12.0'" vmware-apploader-22520.log:2016-03-17T15:35:57.501+01:00| appLoader| I125: Detected VMware library libvmware-gksu.so. vmware-apploader-22520.log:2016-03-17T15:35:57.501+01:00| appLoader| I125: Marking libvmware-gksu.so node as SHIPPED. vmware-apploader-22520.log:2016-03-17T15:35:57.501+01:00| appLoader| I125: Marking libgksu2.so.0 node as INVALID. vmware-apploader-22520.log:2016-03-17T15:35:57.506+01:00| appLoader| I125: Marking libgksu2.so.0 node as SHIPPED. vmware-apploader-22520.log:2016-03-17T15:35:57.506+01:00| appLoader| I125: libgksu2.so.0 vmware-apploader-22520.log:2016-03-17T15:35:57.506+01:00| appLoader| I125: libvmware-gksu.so vmware-apploader-22520.log:2016-03-17T15:35:57.507+01:00| appLoader| I125: Loading shipped version of libgksu2.so.0.

As you can see it loads the bundled lib.

emerge during an installation writes down a list of libs to be checked by the preserve-libs mechanism, this list is used to dump the message you reported above. I don't know how it compiles that list, the real problem with the ebuild is that we must teach emerge to avoid the insertion of vmware-workstation in the list of packages using /usr/lib64/libgksu2.so.0

eteran commented 8 years ago

everything but vmware-player is merged into the overlay. Modules build cleanly on kernels 3.10 - 4.4 (I'll work on 4.5 kernels soon).

I don't know why, but repoman (gentoo's ebuild auditing software) is rejecting vmware-player having a bundled-libs USE flag :-/. It's really weird, looks good to me. Let me know if the overlay works well for you or if there is something I missed during the manual merging :-).