summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVadim Kuznetsov <vadimk@gentoo.org>2009-07-06 17:40:53 +0000
committerVadim Kuznetsov <vadimk@gentoo.org>2009-07-06 17:40:53 +0000
commit8266164b4081c3e0aecafcb24bef198347781f01 (patch)
tree418f1dc39a902b968f123384a94c72967e4e2c04 /app-emulation/vmware-server
parentkeyword ~x86-fbsd (diff)
downloadhistorical-8266164b4081c3e0aecafcb24bef198347781f01.tar.gz
historical-8266164b4081c3e0aecafcb24bef198347781f01.tar.bz2
historical-8266164b4081c3e0aecafcb24bef198347781f01.zip
New streamlined ebuild.
Package-Manager: portage-2.2_rc33/cvs/Linux x86_64
Diffstat (limited to 'app-emulation/vmware-server')
-rw-r--r--app-emulation/vmware-server/ChangeLog10
-rw-r--r--app-emulation/vmware-server/Manifest16
-rw-r--r--app-emulation/vmware-server/files/2.0.1.156745/012_all_rc-config.patch25
-rw-r--r--app-emulation/vmware-server/metadata.xml2
-rw-r--r--app-emulation/vmware-server/vmware-server-2.0.1.156745-r2.ebuild284
5 files changed, 323 insertions, 14 deletions
diff --git a/app-emulation/vmware-server/ChangeLog b/app-emulation/vmware-server/ChangeLog
index fff5cb6c89ec..53e6361bda3d 100644
--- a/app-emulation/vmware-server/ChangeLog
+++ b/app-emulation/vmware-server/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for app-emulation/vmware-server
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-server/ChangeLog,v 1.55 2009/06/25 14:16:09 fauli Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-server/ChangeLog,v 1.56 2009/07/06 17:40:52 vadimk Exp $
+
+*vmware-server-2.0.1.156745-r2 (06 Jul 2009)
+
+ 06 Jul 2009; Vadim Kuznetsov vadimk@gentoo.org
+ +files/2.0.1.156745/012_all_rc-config.patch,
+ +vmware-server-2.0.1.156745-r2.ebuild, metadata.xml:
+ New streamlined ebuild without vmware eclass and with some improvements:
+ rc-config, pam, vix. Fixes bug 263560
25 Jun 2009; Christian Faulhammer <fauli@gentoo.org>
vmware-server-1.0.9.156507.ebuild:
diff --git a/app-emulation/vmware-server/Manifest b/app-emulation/vmware-server/Manifest
index fabb779fe1e2..d0eb52c69756 100644
--- a/app-emulation/vmware-server/Manifest
+++ b/app-emulation/vmware-server/Manifest
@@ -1,6 +1,3 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX 2.0.1.156745/000_all_initd-location.patch 1259 RMD160 edced247443fc535e5a6b98404153e970721e5aa SHA1 9a36424152bc38aba53c66cea983a41f0b23baff SHA256 5e163e7232a260ea6bff570180756807f9587ab5cf836c9c293d7162d788c062
AUX 2.0.1.156745/001_all_fix-permissions.patch 702 RMD160 9d77ba6ff6cba0b9ee529777870470028c687f22 SHA1 863278b6cfadca04ae539bc858731658074ed01e SHA256 8f5fac381a2eda0f1da8a521fcb0ef17b139bf5b8b926425946534e802ce8307
AUX 2.0.1.156745/002_all_pagebreak-detection-fix.patch 800 RMD160 f21a51e552d025a5120519d6dcd41efc3835a432 SHA1 06133c332b6b1f57476b1154de108a9dfc35435d SHA256 d327d7cb2166b9ef4c8c286568c3a7eb64542212164d58b8a7a3c5e51e19ed6d
@@ -8,6 +5,7 @@ AUX 2.0.1.156745/004_all_do-not-build-modules.patch 553 RMD160 6dd19e4a7626f9735
AUX 2.0.1.156745/007_all_use-modprobe-over-insmod.patch 343 RMD160 ef4007c98c8342e00fe8e04c76f08f0901a6539a SHA1 62d4a5ee744c36fa59b44e4382338760e67e88e1 SHA256 68cb51ad4ea3a24faa1101c3a72cd17f61fcdb901af5fa93a9eeaad5b6c9383d
AUX 2.0.1.156745/009_all_init.d-modules-warning.patch 965 RMD160 3a98d59bb591aa6498a7dca9751f441b430c6288 SHA1 5b6b1c1330d1108bb769107c73fdc43c1fe46be5 SHA256 dbeb12905d75f06be519cc99e6e0c070b6e08e34cdb813c518b09a04b55876fb
AUX 2.0.1.156745/011_all_legit-modules-only.patch 535 RMD160 de7fa6a29bf9f7e6670de53fd2dfdc842ec7a097 SHA1 9bd34078eeb012cec94eaac4ab9d899ad4244ca1 SHA256 ed15e9e237bf69dc5ef7803db53011d06b84525d5df6754afa54290d1677f794
+AUX 2.0.1.156745/012_all_rc-config.patch 867 RMD160 b88448d21d361468c2e30863abf2dfac3b71c10e SHA1 5cd66235af794a57e5d982ffb93122999666dbc0 SHA256 a1ef415a5d036efb5846d80a1b0475d56c2bc2f608a4099bd04a1445ace22761
AUX 90vmware-server 91 RMD160 2a9e2e9d428a06ceac7faec500e6b1423da34b25 SHA1 e090847500dd99d161a46cd361ed2297b3d3ecae SHA256 3175cd9665850cf0d25a96849135c93ab129127370d55572f0137ba3d210e423
AUX authorization.xml 332 RMD160 f31f4300342a9290634e20187351910d72e7c28d SHA1 28e2b07ed7225c83bef3172d23d4702fe92a3f75 SHA256 a6ce67bb812ca67d26e518da4903cf27338865c0f06beb58d4a8ece6021e1630
AUX general/001_all_no-desktop-icon.patch 1131 RMD160 3ab69d825994cc3bb177143d27091fc292cec46a SHA1 14264460c8500f1ead267059e2b9b9a5dc8c057f SHA256 b4055370b0092e71a2b2b0f27edeb7bc063ad265f95ab4530e52c3ab3167ad62
@@ -30,13 +28,7 @@ DIST vmware-server-perl-fixed-rpath-libs.tar.bz2 73834 RMD160 7f64627b5b945e8d7d
EBUILD vmware-server-1.0.8.126538.ebuild 2998 RMD160 f44db390c4e54dccf78f77d59b3aa430bc412ef9 SHA1 db86c3ab21c6cf2dbf603383a7fe98f6998f8789 SHA256 b92b97bea08c999656cf5c39a0838d2f6903b4ef36308406bd153144e1af3b25
EBUILD vmware-server-1.0.9.156507.ebuild 2998 RMD160 a66d4710d9627b1e400595a72df53e14168c77ef SHA1 428e1ae954e79399f142904f6c067194a7b4e720 SHA256 2b3064ed384664b0ae1c0500975bcdb2bbabc50dcee5b618d99085d6e02b37fe
EBUILD vmware-server-2.0.1.156745-r1.ebuild 2799 RMD160 30c6d30bc70b6871b2dd53b64d6f3023976b0c35 SHA1 658434a9c02ef1d9c4662b8ccb193b048e081675 SHA256 b13140796f0a88af05a1cb24e8c5248c6e18d331cadf3dc76032565dfe14ea00
+EBUILD vmware-server-2.0.1.156745-r2.ebuild 8823 RMD160 24fe38a516c9c4311d78eb890936f3ce384f4f91 SHA1 c8ddce4d72cf21b24d04a7e868382115d71592f6 SHA256 90e7f5e89e18fefd3734cbcc5a8c132f5d8f8632ef8327c90e440cfdba4a4364
EBUILD vmware-server-2.0.1.156745.ebuild 2796 RMD160 c26aac86392b7f94605425a4c497dda153c1d4c3 SHA1 35192867e3da224200a1fd69a2d0dac0c1288c9e SHA256 daf6974b3936487c219ba669acaa1e2a82f661696b92fc909f8e98401dc650c9
-MISC ChangeLog 10227 RMD160 556ba3f58f3a5f9b806654165cb99c9c3c9b3d7e SHA1 1358d9f39aaafea585557b6aefb2efcd99dfef4b SHA256 5b7c95efbe1462fb700b9a0b2714316607e14f619f75543acce76d91293a0590
-MISC metadata.xml 444 RMD160 c49905e8be5b5ad0ce15caa202caa23e0cbb0030 SHA1 015f85fcc6f66febfea63700cccebb11afb9214c SHA256 00ee918cfca0e92747f14c4aa95427a1a265958eb53a0a39f44aa4362a1f0400
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.11 (GNU/Linux)
-
-iEYEARECAAYFAkpDhrwACgkQNQqtfCuFneMXiwCgjPiVRNtSSEmJP+u6Q/wG1lKR
-rJIAoI8NPSX3dgyDDMZbRO41xRSBeFNT
-=9UuQ
------END PGP SIGNATURE-----
+MISC ChangeLog 10541 RMD160 92d4d02f7b1f87ff4cb7d2399d640554b061c19f SHA1 eecfe8dbca5f19da99076e587e3e24402baa1454 SHA256 10ec4e25e074b192755a8fbb765a533fce8656ec31beb3a142a0a19f89c6265f
+MISC metadata.xml 451 RMD160 34ad07edf6d4f6d9b00b8c0ea197fa8ddad2397b SHA1 7983215b3da6bbfb2e5c167b33b0625a5a31280d SHA256 b64b12ed17797856c0f950540b92f134ca8ffafd40eabafb4ef90c889e16a3e3
diff --git a/app-emulation/vmware-server/files/2.0.1.156745/012_all_rc-config.patch b/app-emulation/vmware-server/files/2.0.1.156745/012_all_rc-config.patch
new file mode 100644
index 000000000000..f3bc2b36c97c
--- /dev/null
+++ b/app-emulation/vmware-server/files/2.0.1.156745/012_all_rc-config.patch
@@ -0,0 +1,25 @@
+--- bin.old/vmware-config.pl 2009-07-02 17:56:08.873568674 -0400
++++ bin/vmware-config.pl 2009-07-02 17:56:59.000000000 -0400
+@@ -1341,6 +1341,14 @@
+ }
+ }
+
++ # Try using Genoot's rc-config
++ if ($gHelper{'rc-config'} ne '') {
++ if(0 == system(shell_string($gHelper{'rc-config'}) . ' add '
++ . $service . ' default')) {
++ return;
++ }
++ }
++
+ # Set up vmware to start/stop at run levels 2, 3 and 5
+ link_runlevel(2, $service, $S_level, $K_level);
+ link_runlevel(3, $service, $S_level, $K_level);
+@@ -2552,6 +2560,7 @@
+ }
+ $gHelper{'insserv'} = internal_which('insserv');
+ $gHelper{'chkconfig'} = internal_which('/sbin/chkconfig');
++ $gHelper{'rc-config'} = internal_which('/usr/bin/rc-config');
+ if (vmware_product() eq 'server' &&
+ $gHelper{'chkconfig'} eq '') {
+ error('No initscript installer found.' . "\n\n");
diff --git a/app-emulation/vmware-server/metadata.xml b/app-emulation/vmware-server/metadata.xml
index 4df7eb03a614..91d5f9970b3c 100644
--- a/app-emulation/vmware-server/metadata.xml
+++ b/app-emulation/vmware-server/metadata.xml
@@ -3,7 +3,7 @@
<pkgmetadata>
<herd>vmware</herd>
<maintainer>
- <email>vadimk@g.o</email>
+ <email>vadimk@gentoo.org</email>
</maintainer>
<longdescription>
VMware Server is a hosted virtualization platform that installs like an
diff --git a/app-emulation/vmware-server/vmware-server-2.0.1.156745-r2.ebuild b/app-emulation/vmware-server/vmware-server-2.0.1.156745-r2.ebuild
new file mode 100644
index 000000000000..7db71f9e4485
--- /dev/null
+++ b/app-emulation/vmware-server/vmware-server-2.0.1.156745-r2.ebuild
@@ -0,0 +1,284 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-server/vmware-server-2.0.1.156745-r2.ebuild,v 1.1 2009/07/06 17:40:52 vadimk Exp $
+
+# Unlike many other binary packages the user doesn't need to agree to a licence
+# to download VMWare. The agreeing to a licence is part of the configure step
+# which the user must run manually.
+
+EAPI="2"
+
+inherit eutils pam pax-utils versionator
+
+MY_PV=$(replace_version_separator 3 '-' )
+MY_PN="VMware-server-${MY_PV}"
+
+DESCRIPTION="VMware Server for Linux"
+HOMEPAGE="http://www.vmware.com/"
+SRC_URI=" x86? ( mirror://vmware/software/vmserver/${MY_PN}.i386.tar.gz )
+ amd64? ( mirror://vmware/software/vmserver/${MY_PN}.x86_64.tar.gz ) "
+
+LICENSE="vmware"
+IUSE=""
+SLOT="0"
+KEYWORDS="-* ~x86 ~amd64"
+RESTRICT="strip"
+
+CDEPEND=">=sys-libs/glibc-2.3.5
+ >=dev-lang/perl-5
+ sys-apps/pciutils"
+DEPEND="${CDEPEND}
+ sys-apps/findutils
+ x11-misc/shared-mime-info
+ virtual/os-headers"
+# vmware-server should not use virtual/libc as this is a
+# precompiled binary package thats linked to glibc.
+RDEPEND="${CDEPEND}
+ dev-libs/libxml2
+ dev-libs/glib
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libXft
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXt
+ x11-libs/libXtst
+ x11-misc/xdg-utils
+ sys-fs/fuse
+ sys-apps/hal
+ sys-libs/zlib
+ virtual/pam
+ !<sys-apps/dbus-0.62
+ !app-emulation/vmware-player
+ !app-emulation/vmware-workstation
+ ~app-emulation/vmware-modules-1.0.0.24
+ !<app-emulation/vmware-modules-1.0.0.24
+ !>=app-emulation/vmware-modules-1.0.0.25
+ "
+
+PDEPEND="app-emulation/vmware-vix"
+
+S=${WORKDIR}/vmware-server-distrib
+
+pkg_setup() {
+ if use x86; then
+ MY_P="${MY_PN}.i386"
+ elif use amd64; then
+ MY_P="${MY_PN}.x86_64"
+ fi
+}
+
+src_prepare() {
+ VMWARE_GROUP=${VMWARE_GROUP:-vmware}
+ VMWARE_INSTALL_DIR=/opt/${PN//-//}
+
+ shortname="wgs"
+ product="vmware"
+ config_program="vmware-config.pl"
+ config_dir="/etc/vmware"
+ product_name="VMware Server 2"
+
+ enewgroup ${VMWARE_GROUP}
+
+ # Remove PAX MPROTECT flag from all applicable files in /bin, /sbin for
+ # the vmware package only (since modules, tools and console should not
+ # need to generate code on the fly in memory).
+ pax-mark -m $(list-paxables "${S}"/{bin{,-debug},sbin}/{vmware-serverd,vmware-vmx})
+
+ EPATCH_SOURCE="${FILESDIR}"/${PV} EPATCH_SUFFIX="patch" epatch
+
+ # Proper lsmod
+ sed -i -e "s:/sbin/lsmod:/bin/lsmod:" "${S}"/installer/services.sh || die "sed"
+ sed -i -e "s:/sbin/lsmod:/bin/lsmod:" "${S}"/lib/net-services.sh || die "sed"
+
+ # Set the name
+ sed -i -e "s:%LONGNAME%:${product_name}:" "${S}"/installer/services.sh || die "sed"
+ sed -i -e "s:%SHORTNAME%:${shortname}:" "${S}"/installer/services.sh || die "sed"
+
+ # We won't want any perl scripts from VMware once we've finally got all
+ # of the configuration done, but for now, they're necessary.
+ #rm -f *.pl bin/*.pl
+
+ # Since with Gentoo we compile everthing it doesn't make sense to keep
+ # the precompiled modules arround. Saves about 4 megs of disk space too.
+ rm -rf "${S}"/lib/modules/binary
+ # We also don't need to keep the icons around, or do we?
+ #rm -rf ${S}/lib/share/icons
+
+ rm -rf "${S}"/etc/pam.d/
+ sed -i -e "s:configure_wgs_pam_d():#&:" "${S}"/bin/vmware-config.pl || die "sed pam_d"
+}
+
+src_install() {
+ # We loop through our directories and copy everything to our system.
+ for x in bin lib sbin
+ do
+ if [[ -e "${S}/${x}" ]]
+ then
+ dodir "${VMWARE_INSTALL_DIR}"/${x}
+ cp -pPR "${S}"/${x}/* "${D}""${VMWARE_INSTALL_DIR}"/${x} \
+ || die "copying ${x}"
+ fi
+ done
+
+ # If we have an /etc directory, we copy it.
+ if [[ -e "${S}/etc" ]]
+ then
+ dodir "${config_dir}"
+ cp -pPR "${S}"/etc/* "${D}""${config_dir}"
+ fowners root:${VMWARE_GROUP} "${config_dir}"
+ fperms 770 "${config_dir}"
+ fi
+
+ # If we have any helper files, we install them. First, we check for an
+ # init script.
+ if [[ -e "${FILESDIR}/${PN}.rc" ]]
+ then
+ newinitd "${FILESDIR}"/${PN}.rc ${product} || die "newinitd"
+ fi
+ # Then we check for an environment file.
+ if [[ -e "${FILESDIR}/90${PN}" ]]
+ then
+ doenvd "${FILESDIR}"/90${PN} || die "doenvd"
+ fi
+ # Last, we check for any mime files.
+ if [[ -e "${FILESDIR}/${PN}.xml" ]]
+ then
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/${PN}.xml || die "mimetypes"
+ fi
+
+ # Blame bug #91191 for this one.
+ if [[ -e doc/EULA ]]
+ then
+ insinto "${VMWARE_INSTALL_DIR}"/doc
+ doins doc/EULA || die "copying EULA"
+ fi
+
+ # Do we have vmware-ping/vmware-vmx? If so, make them setuid.
+ for p in /bin/vmware-ping /lib/bin/vmware-vmx /lib/bin-debug/vmware-vmx /lib/bin/vmware-vmx-debug /sbin/vmware-authd;
+ do
+ if [ -x "${D}${VMWARE_INSTALL_DIR}${p}" ]
+ then
+ fowners root:${VMWARE_GROUP} "${VMWARE_INSTALL_DIR}"${p}
+ fperms 4750 "${VMWARE_INSTALL_DIR}"${p}
+ fi
+ done
+
+ # This removed the user/group warnings
+ # But also broke vmware-server with FEATURES="userpriv" since it removes
+ # the set-UID bit
+ #chown -R root:${VMWARE_GROUP} ${D} || die
+
+ # We like desktop icons.
+ # TODO: Fix up the icon creation, across the board.
+ #make_desktop_entry ${PN} "${product_name}" ${PN}.png
+
+ # Now, we copy in our services.sh file
+ exeinto "${config_dir}"/init.d
+ newexe installer/services.sh ${product} || die "services.sh"
+
+ newinitd "${FILESDIR}/vmware-server-2.rc" vmware
+
+ # startup symlinks
+ dosym ${config_dir}/init.d/${product} ${config_dir}/init.d/vmware-autostart
+ dosym ${config_dir}/init.d/${product} ${config_dir}/init.d/vmware-core
+ dosym ${config_dir}/init.d/${product} ${config_dir}/init.d/vmware-mgmt
+
+ # pam
+ pamd_mimic_system vmware-authd auth account
+
+ # Man pages and docs
+ dodoc doc/*
+ doman man/man1/*
+
+ # VMware authorization service
+ insinto ${config_dir}/hostd
+ doins "${FILESDIR}/authorization.xml"
+
+ # Finally, we run the "Questions"
+ einfo "Adding answers to ${config_dir}/locations"
+ locations="${D}${config_dir}/locations"
+ echo "answer BINDIR ${VMWARE_INSTALL_DIR}/bin" >> ${locations}
+ echo "answer LIBDIR ${VMWARE_INSTALL_DIR}/lib" >> ${locations}
+ echo "answer MANDIR ${VMWARE_INSTALL_DIR}/man" >> ${locations}
+ echo "answer DOCDIR ${VMWARE_INSTALL_DIR}/doc" >> ${locations}
+ echo "answer SBINDIR ${VMWARE_INSTALL_DIR}/sbin" >> ${locations}
+ echo "answer RUN_CONFIGURATOR no" >> ${locations}
+ echo "answer INITDIR ${config_dir}/init.d" >> ${locations}
+ echo "answer INITSCRIPTSDIR ${config_dir}/init.d" >> ${locations}
+}
+
+pkg_config() {
+ einfo "Running ${VMWARE_INSTALL_DIR}/bin/vmware-config.pl"
+ "${VMWARE_INSTALL_DIR}/bin/vmware-config.pl"
+}
+
+pkg_preinst() {
+ # This must be done after the install to get the mtimes on each file
+ # right.
+
+ #Note: it's a bit weird to use ${D} in a preinst script but it should work
+ #(drobbins, 1 Feb 2002)
+
+ einfo "Generating ${config_dir}/locations file."
+ d=`echo ${D} | wc -c`
+ for x in `find ${D}${VMWARE_INSTALL_DIR} ${D}${config_dir}` ; do
+ x="`echo ${x} | cut -c ${d}-`"
+ if [ -d "${D}/${x}" ] ; then
+ echo "directory ${x}" >> "${D}${config_dir}"/locations
+ else
+ echo -n "file ${x}" >> "${D}${config_dir}"/locations
+ if [ "${x}" == "${config_dir}/locations" ] ; then
+ echo "" >> "${D}${config_dir}"/locations
+ elif [ "${x}" == "${config_dir}/not_configured" ] ; then
+ echo "" >> "${D}${config_dir}"/locations
+ else
+ echo -n " " >> "${D}${config_dir}"/locations
+ find "${D}${x}" -printf %T@ >> "${D}${config_dir}"/locations
+ echo "" >> "${D}${config_dir}"/locations
+ fi
+ fi
+ done
+}
+
+pkg_postinst() {
+ update-mime-database /usr/share/mime
+ [[ -d "${config_dir}" ]] && chown -R root:${VMWARE_GROUP} ${config_dir}
+
+ # This is to fix the problem where the not_configured file doesn't get
+ # removed when the configuration is run. This doesn't remove the file
+ # It just tells the vmware-config.pl script it can delete it.
+ einfo "Updating ${config_dir}/locations"
+ for x in "${config_dir}"/._cfg????_locations ; do
+ if [ -f $x ] ; then
+ cat $x >> "${config_dir}"/locations
+ rm $x
+ fi
+ done
+
+ ewarn "Use "
+ ewarn " emerge vmware-server --config"
+ ewarn "to configure your installation of ${product_name}."
+
+ ewarn "In order to run ${product_name}, you have to"
+ ewarn "be in the '${VMWARE_GROUP}' group."
+
+ #ewarn "By default xinetd only allows connections from localhost"
+ #ewarn "To allow external users access to vmware-server you must edit"
+ #ewarn " /etc/xinetd.d/vmware-authd"
+ #ewarn "and specify a new 'only_from' line"
+
+ ewarn "VMWare Server also has issues when running on a JFS filesystem. For more"
+ ewarn "information see http://bugs.gentoo.org/show_bug.cgi?id=122500#c94"
+}
+
+pkg_postrm() {
+ if ! has_version app-emulation/${PN}; then
+ elog "To remove all traces of ${product} you will need to remove the files"
+ elog "in ${config_dir} and /etc/init.d/${product}."
+ elog "If the vmware-modules package is installed, you may no longer need it."
+ fi
+}