Index: profiles/desc/vmware_tools.desc =================================================================== --- profiles/desc/vmware_tools.desc (revision 0) +++ profiles/desc/vmware_tools.desc (revision 0) @@ -0,0 +1,10 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header$ + +freebsd - Install VMware Tools for FreeBSD guests +linux - Install VMware Tools for Linux guests +netware - Install VMware Tools for Netware guests +solaris - Install VMware Tools for Solaris guests +windows - Install VMware Tools for Windows 2000+ guests +winPre2k - Install VMware Tools for Windows 95/98/ME guests Index: eclass/vmware-bundle.eclass =================================================================== --- eclass/vmware-bundle.eclass (revision 0) +++ eclass/vmware-bundle.eclass (revision 0) @@ -0,0 +1,76 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header$ + +DEPEND="dev-libs/libxslt" + +vmware-bundle_extract-bundle-component() { + local bundle=${1:?} component=${2:?} dest=${3:-${2}} + cat > "${T}"/list-bundle-components.xsl <<-EOF + + + + + + + + + + + + + + EOF + local -i bundle_size=$(stat -L -c'%s' "${bundle}") + local -i bundle_manifestOffset=$(od -An -j$((bundle_size-36)) -N4 -tu4 "${bundle}") + local -i bundle_manifestSize=$(od -An -j$((bundle_size-40)) -N4 -tu4 "${bundle}") + local -i bundle_dataOffset=$(od -An -j$((bundle_size-44)) -N4 -tu4 "${bundle}") + local -i bundle_dataSize=$(od -An -j$((bundle_size-52)) -N8 -tu8 "${bundle}") + tail -c+$((bundle_manifestOffset+1)) "${bundle}" 2> /dev/null | head -c$((bundle_manifestSize)) | + xsltproc "${T}"/list-bundle-components.xsl - | + while read -r component_offset component_size component_name ; do + if [[ ${component_name} == ${component} ]] ; then + ebegin "Extracting '${component_name}' component from '$(basename "${bundle}")'" + vmware-bundle_extract-component "${bundle}" "${dest}" $((bundle_dataOffset+component_offset)) + eend + fi + done +} + +vmware-bundle_extract-component() { + local component=${1:?} dest=${2:-.} + local -i offset=${3} + cat > "${T}"/list-component-files.xsl <<-EOF + + + + + + + + + + + + + + + + EOF + local -i component_manifestOffset=$(od -An -j$((offset+9)) -N4 -tu4 "${component}") + local -i component_manifestSize=$(od -An -j$((offset+13)) -N4 -tu4 "${component}") + local -i component_dataOffset=$(od -An -j$((offset+17)) -N4 -tu4 "${component}") + local -i component_dataSize=$(od -An -j$((offset+21)) -N8 -tu8 "${component}") + tail -c+$((offset+component_manifestOffset+1)) "${component}" 2> /dev/null | + head -c$((component_manifestSize)) | xsltproc "${T}"/list-component-files.xsl - | + while read -r file_offset file_compressedSize file_uncompressedSize file_path ; do + if [[ ${file_path} ]] ; then + echo -n '.' + file_path="${dest}/${file_path}" + mkdir -p "$(dirname "${file_path}")" || die + tail -c+$((offset+component_dataOffset+file_offset+1)) "${component}" 2> /dev/null | + head -c$((file_compressedSize)) | gzip -cd > "${file_path}" || die + fi + done + echo +} Index: app-emulation/vmware-tools/metadata.xml =================================================================== --- app-emulation/vmware-tools/metadata.xml (revision 0) +++ app-emulation/vmware-tools/metadata.xml (revision 0) @@ -0,0 +1,5 @@ + + + +vmware + Index: app-emulation/vmware-tools/Manifest =================================================================== --- app-emulation/vmware-tools/Manifest (revision 0) +++ app-emulation/vmware-tools/Manifest (revision 0) @@ -0,0 +1,14 @@ +DIST vmware-tools-freebsd-8.1.4-227600.i386.component.tar 18012160 RMD160 287543e21461888b7b77c1bbb5d777b622d53617 SHA1 10b2befd031b65402b30d4ef5f199177ef2302ec SHA256 120bafcfd4022a711aa9a004aff2327d2232c93ee0fd0fb8e81d5fc29368e381 +DIST vmware-tools-freebsd-8.1.4-227600.x86_64.component.tar 18012160 RMD160 05f33dda081c5f6d91d162c294981841e4cf1a2a SHA1 5177823bd6f54264257d6dca1b3c0f7b6103ea13 SHA256 fd2fc6f006e712519e1942257f337f17cd420f1d3cfdf077e6b8512f7745af99 +DIST vmware-tools-linux-8.1.4-227600.i386.component.tar 96532480 RMD160 1c3bb72b9602b5833f708284208ce6e088b24d18 SHA1 51a19c0e671e43c6bf1407b76fc78426e2f83831 SHA256 5e8280efbf264605788b15a77ad37f99d35b94b847b7f0138c6f2bd9ca902635 +DIST vmware-tools-linux-8.1.4-227600.x86_64.component.tar 96532480 RMD160 fe7344f24b92e7609699f08b4011a7c29ae1ff9d SHA1 ced7ec378e7cf5ea6e9293fb95d0aa36bd562a9e SHA256 d068d272a514ff550819dbd64cde5c3832ccec9f37f233127db6e8fc630550f0 +DIST vmware-tools-netware-8.1.4-227600.i386.component.tar 81920 RMD160 6609981f27ebfd6a7c2868f9dc2dccae8edc3ba8 SHA1 79939c3b3c69dca21f06e5415728c45e902aa8c1 SHA256 95248d53379455670136730918f4eb4c034ec338f1170719f6b00c73d7750277 +DIST vmware-tools-netware-8.1.4-227600.x86_64.component.tar 81920 RMD160 5456049c035a0e215089dbbca32ae6a9ce188552 SHA1 21a52064154d1cb41d98143045b4c4b267446db9 SHA256 462b805394cd54eebdeb2c47c6fa88c5b1b0605d38dfb8539853c8278be3866c +DIST vmware-tools-solaris-8.1.4-227600.i386.component.tar 19456000 RMD160 7108593bdccc92723ea39da23cabc9b2e082dc71 SHA1 09c642b8e8bfe4cff4f74c4355932a8304dfaaa3 SHA256 ac2e6894ac5991cdb73c4305e59d0a46a0bff72804ec31f125c4b51b37beaf30 +DIST vmware-tools-solaris-8.1.4-227600.x86_64.component.tar 19456000 RMD160 4505cb20e63e7d15e845bd488989ec38cbf837c1 SHA1 f4e571ae0213333f59e544e5bcb225b8695884cb SHA256 9057ebe11150e0b59ade5e1c26b190d67f5cc78d881e7fdd5e1a2041fee8b317 +DIST vmware-tools-winPre2k-8.1.4-227600.i386.component.tar 11059200 RMD160 a30364bb05bb7b3eade88321d21936f473bdbf8b SHA1 32c8cfb2f3b59e6c7cc01f2041e2ad8859974242 SHA256 292bad722af2267d672ffb83484f96a8bca1a741ad3c8fae698a1f90c33a21ac +DIST vmware-tools-winPre2k-8.1.4-227600.x86_64.component.tar 11059200 RMD160 63e928848ee281a9df2a4a18ba9d3681dd1bc827 SHA1 eb3d46f81b1f92a84d0008100b8c9c2acee6011c SHA256 0ba14e83cf45759c05ab07e6cbe302d6bfdf41242a4b6d9733b980a995a83ee7 +DIST vmware-tools-windows-8.1.4-227600.i386.component.tar 33239040 RMD160 962b01b74004f3e7769b1af63acc40a950850b4d SHA1 a31b16d90cc68803ba820bcb919744d09fc22280 SHA256 bd2b27f5a9f48b4e01840969748e1d6e94cfa7ef11869b44d9999bd5c4a4de22 +DIST vmware-tools-windows-8.1.4-227600.x86_64.component.tar 33239040 RMD160 c64f1d5ddb0e3e9bc4a03a70afbf22e2d658c7c2 SHA1 15cf0d03629537811618c901a7d9990991c5eee5 SHA256 6a51de8d58dcbfb6ec735991af24ec582f611b04509b633556a12c1616892496 +EBUILD vmware-tools-8.1.4.227600.ebuild 1286 RMD160 08c38ff68b6b52992e1ff915b0c97b00ae430706 SHA1 42bd21396e641097698c0f722572c67f8086b230 SHA256 a924b24d01a10473cfea5329d68566eae497a3e499d68b755c343a0ba3fdee6c +MISC metadata.xml 159 RMD160 fc7f68a382390e5916b0fb43f37a893fad4f9798 SHA1 f46b02a39bcd0165558de67ff4256cfc812418a3 SHA256 8581ae1c90a48f50fa0542c7fb28cb8984baaf12f50fa18f33e467081effb215 Index: app-emulation/vmware-tools/vmware-tools-8.1.4.227600.ebuild =================================================================== --- app-emulation/vmware-tools/vmware-tools-8.1.4.227600.ebuild (revision 0) +++ app-emulation/vmware-tools/vmware-tools-8.1.4.227600.ebuild (revision 0) @@ -0,0 +1,47 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header$ + +inherit versionator vmware-bundle + +MY_PV="$(replace_version_separator 3 - $PV)" +BASE_URI="http://softwareupdate.vmware.com/cds/vmw-desktop/player/3.0.1/227600/linux/" + +DESCRIPTION="VMware Tools for guest operating systems" +HOMEPAGE="http://www.vmware.com/products/player/" + +LICENSE="vmware" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +RESTRICT="mirror" + +IUSE_VMWARE_GUEST="freebsd linux netware solaris windows winPre2k" + +VM_INSTALL_DIR="/opt/vmware" + +for guest in ${IUSE_VMWARE_GUEST} ; do + SRC_URI+=" vmware_guest_${guest}? ( + amd64? ( ${BASE_URI}vmware-tools-${guest}-${MY_PV}.x86_64.component.tar ) + x86? ( ${BASE_URI}vmware-tools-${guest}-${MY_PV}.i386.component.tar ) + )" + IUSE+=" vmware_guest_${guest}" +done ; unset guest + +src_unpack() { + local arch + if use x86 ; then arch='x86' + elif use amd64 ; then arch='x86_64' + fi + local guest ; for guest in ${IUSE_VMWARE_GUEST} ; do + if use "vmware_guest_${guest}" ; then + local component="vmware-tools-${guest}-${MY_PV}.${arch}.component" + unpack "${component}.tar" + vmware-bundle_extract-component "${component}" + fi + done +} + +src_install() { + insinto "${VM_INSTALL_DIR}"/lib/vmware/isoimages + doins *.iso{,.sig} +} Index: app-emulation/vmware-player/Manifest =================================================================== --- app-emulation/vmware-player/Manifest (revision 398) +++ app-emulation/vmware-player/Manifest (working copy) @@ -4,7 +4,7 @@ AUX vmware-3.0.rc 776 RMD160 21380174fda9e6bdc2a720ecd4c1742bf76b9439 SHA1 c6ec74a605b31cbb4f1f73a0639b8068545e8f33 SHA256 9a99d7c5a860893061f36ad2655f89340761cfbc3f58d7d633b3726b0cb5a7d0 DIST VMware-Player-3.0.1-227600.i386.bundle 84974107 RMD160 4337339976d25d8dbd1f4904ba2ed2b53d1e9c49 SHA1 cff76010f0429576288ea1e5a594cd47a2c64f4a SHA256 9314e49ebb252fd937032481b13d0bea4a3af6409485e79576f797834b978285 DIST VMware-Player-3.0.1-227600.x86_64.bundle 79959324 RMD160 c6652acadc760bab8ecfed2682706e31f51423ef SHA1 84f25370d24c03a18968a4f4c8e06cef3d21c2df SHA256 8347b3fa0c1cd1c88c3c8049462f3d0d752d6f7daa747a7d2a67667a3f55f190 -EBUILD vmware-player-3.0.1.227600-r5.ebuild 11203 RMD160 e3d0ecf357a25f46d19f3c4a132fa50f5917b844 SHA1 48344fc9d98a1f3fa4a7e4086ccb7670b3ab9e72 SHA256 b99c9a52b23df261a896ba2412ae9a8b3f44d8106c868900e4c5ab05c1a268e7 +EBUILD vmware-player-3.0.1.227600-r5.ebuild 9314 RMD160 510509ac0d4dd024d14ef36e0c7d29b1db17b193 SHA1 66e602c5a466cf9b8b8d71f40a6638efed7c9230 SHA256 edb80428c35179a3cbd78460ff949b93668c7ce0a12ab262c11751e915595d11 EBUILD vmware-player-3.0.1.227600.ebuild 5852 RMD160 b6a1ba2e67a5ed38c3be96c7e31db9dfaf54d3ad SHA1 d910759939a4a977db9411470e32b78b6342ca03 SHA256 cf1722ec1f3be23f3a43f7360bf8f200f28ba24d856faadf32a7c0ef8f80b78a MISC ChangeLog 2436 RMD160 0a4ef64230dc1e3536c5fb7b5aae2ee693c76489 SHA1 8cb54f2f58acca053843dff49691ff581af66183 SHA256 8b1767f8cd0ea7e159b4c1f7215ab62806f2b1a66daa784106bff8b40c42a262 MISC metadata.xml 159 RMD160 fc7f68a382390e5916b0fb43f37a893fad4f9798 SHA1 f46b02a39bcd0165558de67ff4256cfc812418a3 SHA256 8581ae1c90a48f50fa0542c7fb28cb8984baaf12f50fa18f33e467081effb215 Index: app-emulation/vmware-player/vmware-player-3.0.1.227600-r5.ebuild =================================================================== --- app-emulation/vmware-player/vmware-player-3.0.1.227600-r5.ebuild (revision 398) +++ app-emulation/vmware-player/vmware-player-3.0.1.227600-r5.ebuild (working copy) @@ -1,10 +1,10 @@ # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-player/vmware-player-2.5.3.185404.ebuild,v 1.4 2009/09/25 10:37:05 maekke Exp $ +# $Header$ EAPI="2" -inherit eutils versionator fdo-mime gnome2-utils +inherit eutils versionator fdo-mime gnome2-utils vmware-bundle MY_PN="VMware-Player" MY_PV="$(replace_version_separator 3 - $PV)" @@ -25,9 +25,9 @@ # vmware-workstation should not use virtual/libc as this is a # precompiled binary package thats linked to glibc. -DEPEND="dev-libs/libxslt" RDEPEND=" ~app-emulation/vmware-modules-1.0.0.26 + ~app-emulation/vmware-tools-8.1.4.227600 app-arch/libarchive dev-cpp/cairomm dev-cpp/glibmm @@ -92,17 +92,18 @@ local bundle if use x86; then - bundle="${MY_PN}.i386.bundle" + bundle="${MY_P}.i386.bundle" elif use amd64; then - bundle="${MY_PN}.x86_64.bundle" + bundle="${MY_P}.x86_64.bundle" fi - einfo "Please download the ${bundle} from ${HOMEPAGE}" + einfo "Please download ${bundle}" + einfo "from ${HOMEPAGE}" einfo "and place it in ${DISTDIR}" } src_unpack() { - bundle_extract_component "${DISTDIR}/${A}" vmware-player-app + vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" vmware-player-app } src_prepare() { @@ -189,7 +190,7 @@ sed -e "s:@@BINARY@@:${VM_INSTALL_DIR}/bin/vmplayer:g" \ -i "${D}/usr/share/applications/${PN}.desktop" || die - # delete superfluous stuff + # remove superfluous libraries rm -rf "${D}${VM_INSTALL_DIR}"/bin/vmware-modconfig \ "${D}${VM_INSTALL_DIR}"/lib/vmware/lib/libarchive.so.2 \ "${D}${VM_INSTALL_DIR}"/lib/vmware/lib/libart_lgpl_2.so.2 \ @@ -251,8 +252,7 @@ "${D}${VM_INSTALL_DIR}"/lib/vmware/lib/libxmlrpc_util.so.3 \ "${D}${VM_INSTALL_DIR}"/lib/vmware/lib/libXrandr.so.2 \ "${D}${VM_INSTALL_DIR}"/lib/vmware/lib/libXrender.so.1 \ - || die "failed to remove erroneous stuff" - + || die "failed to remove superfluous libraries" } pkg_config() { @@ -283,34 +283,3 @@ fdo-mime_desktop_database_update gnome2_icon_cache_update } - -bundle_extract_component() { - local -i bundle_size=$(stat -L -c'%s' "${1}") - local -i bundle_manifestOffset=$(od -An -j$((bundle_size-36)) -N4 -tu4 "${1}") - local -i bundle_manifestSize=$(od -An -j$((bundle_size-40)) -N4 -tu4 "${1}") - local -i bundle_dataOffset=$(od -An -j$((bundle_size-44)) -N4 -tu4 "${1}") - local -i bundle_dataSize=$(od -An -j$((bundle_size-52)) -N8 -tu8 "${1}") - tail -c+$((bundle_manifestOffset+1)) "${1}" 2> /dev/null | head -c$((bundle_manifestSize)) | - xsltproc "${FILESDIR}"/list-bundle-components.xsl - | - while read -r component_offset component_size component_name ; do - if [[ ${component_name} == ${2} ]] ; then - ebegin "Extracting '${component_name}' component from '$(basename "${1}")'" - declare -i component_manifestOffset=$(od -An -j$((bundle_dataOffset+component_offset+9)) -N4 -tu4 "${1}") - declare -i component_manifestSize=$(od -An -j$((bundle_dataOffset+component_offset+13)) -N4 -tu4 "${1}") - declare -i component_dataOffset=$(od -An -j$((bundle_dataOffset+component_offset+17)) -N4 -tu4 "${1}") - declare -i component_dataSize=$(od -An -j$((bundle_dataOffset+component_offset+21)) -N8 -tu8 "${1}") - tail -c+$((bundle_dataOffset+component_offset+component_manifestOffset+1)) "${1}" 2> /dev/null | - head -c$((component_manifestSize)) | xsltproc "${FILESDIR}"/list-component-files.xsl - | - while read -r file_offset file_compressedSize file_uncompressedSize file_path ; do - if [[ ${file_path} ]] ; then - echo -n '.' - file_path="${component_name}/${file_path}" - mkdir -p "$(dirname "${file_path}")" - tail -c+$((bundle_dataOffset+component_offset+component_dataOffset+file_offset+1)) "${1}" 2> /dev/null | - head -c$((file_compressedSize)) | gzip -cd > "${file_path}" - fi - done - echo ; eend - fi - done -}