diff options
author | Chris Gianelloni <wolf31o2@gentoo.org> | 2006-05-08 13:56:34 +0000 |
---|---|---|
committer | Chris Gianelloni <wolf31o2@gentoo.org> | 2006-05-08 13:56:34 +0000 |
commit | 7509c4734a194d428b5fe20b8dc87ff93a4c4267 (patch) | |
tree | 2afeae1c98678732d555dd1bea458948755fad88 /app-emulation/vmware-workstation-tools | |
parent | Masking vmware-workstation-tools while I work on it. (diff) | |
download | gentoo-2-7509c4734a194d428b5fe20b8dc87ff93a4c4267.tar.gz gentoo-2-7509c4734a194d428b5fe20b8dc87ff93a4c4267.tar.bz2 gentoo-2-7509c4734a194d428b5fe20b8dc87ff93a4c4267.zip |
Initial updates for bug #88307. This is not quite complete yet, nor tested, so the package is currently masked. I am working on making this much easier and more transparent for the user, by reusing code from the vmware-workstation ebuilds.
(Portage version: 2.1_pre9-r4)
Diffstat (limited to 'app-emulation/vmware-workstation-tools')
7 files changed, 153 insertions, 76 deletions
diff --git a/app-emulation/vmware-workstation-tools/ChangeLog b/app-emulation/vmware-workstation-tools/ChangeLog index 38a910e84350..f601c30236ed 100644 --- a/app-emulation/vmware-workstation-tools/ChangeLog +++ b/app-emulation/vmware-workstation-tools/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for app-emulation/vmware-linux-tools # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/ChangeLog,v 1.3 2006/05/08 13:27:48 wolf31o2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/ChangeLog,v 1.4 2006/05/08 13:56:33 wolf31o2 Exp $ + + 08 May 2006; Chris Gianelloni <wolf31o2@gentoo.org> files/4.5.2/locations, + files/5.0.0/locations, files/4.5.2/vmware-workstation-tools, + files/5.0.0/vmware-workstation-tools, + vmware-workstation-tools-4.5.2.ebuild, + vmware-workstation-tools-5.0.0.ebuild: + Initial updates for bug #88307. This is not quite complete yet, nor tested, + so the package is currently masked. I am working on making this much easier + and more transparent for the user, by reusing code from the + vmware-workstation ebuilds. 08 May 2006; Chris Gianelloni <wolf31o2@gentoo.org> files/4.5.2/vmware-workstation-tools, diff --git a/app-emulation/vmware-workstation-tools/files/4.5.2/locations b/app-emulation/vmware-workstation-tools/files/4.5.2/locations index 478b1e4d1af4..df9539b4bff3 100644 --- a/app-emulation/vmware-workstation-tools/files/4.5.2/locations +++ b/app-emulation/vmware-workstation-tools/files/4.5.2/locations @@ -8,8 +8,8 @@ answer BUILDR_vmhgfs yes answer HEADER_DIR /lib/modules/2.6.7-gentoo-r9/build/include answer VMHGFS_CONFED yes answer BINDIR /usr/bin -answer INITDIR /tmp -answer INITSCRIPTSDIR /tmp +answer INITDIR /etc/init.d +answer INITSCRIPTSDIR /etc/init.d answer SBINDIR /usr/sbin answer LIBDIR /usr/lib/vmware-tools directory /etc/vmware-tools diff --git a/app-emulation/vmware-workstation-tools/files/4.5.2/vmware-workstation-tools b/app-emulation/vmware-workstation-tools/files/4.5.2/vmware-workstation-tools index 46ed6b782642..b0ee404eeed1 100755 --- a/app-emulation/vmware-workstation-tools/files/4.5.2/vmware-workstation-tools +++ b/app-emulation/vmware-workstation-tools/files/4.5.2/vmware-workstation-tools @@ -1,6 +1,6 @@ #!/sbin/runscript # -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/files/4.5.2/vmware-workstation-tools,v 1.2 2006/05/08 13:27:49 wolf31o2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/files/4.5.2/vmware-workstation-tools,v 1.3 2006/05/08 13:56:34 wolf31o2 Exp $ # # This script manages the services needed to run VMware software @@ -30,12 +30,12 @@ vmware_tools_load_module() { if [ "`isLoaded "$1"`" = 'yes' ]; then /sbin/rmmod "$1" fi - /sbin/insmod -s -f "/lib/modules/`uname -r`/misc/$1.o" >/dev/null 2>&1 || /sbin/insmod -s -f "$1" >/dev/null 2>&1 || exit 1 + /sbin/insmod -s -f "/lib/modules/`uname -r`/misc/$1.o" >/dev/null 2>&1 || /sbin/insmod -s -f "$1" >/dev/null 2>&1 || eend 1 } vmware_tools_unload_module() { if [ "`isLoaded "$1"`" = 'yes' ]; then - /sbin/rmmod "$1" >/dev/null 2>&1 || exit 1 + /sbin/rmmod "$1" >/dev/null 2>&1 || eend 1 fi } @@ -61,7 +61,7 @@ checkconfig () start () { - checkconfig || exit 1 + checkconfig || eend 1 ebegin "Loading vmware filesystem" vmware_tools_load_module $VMWARE_VMHGFS_MOD diff --git a/app-emulation/vmware-workstation-tools/files/5.0.0/locations b/app-emulation/vmware-workstation-tools/files/5.0.0/locations index 478b1e4d1af4..df9539b4bff3 100644 --- a/app-emulation/vmware-workstation-tools/files/5.0.0/locations +++ b/app-emulation/vmware-workstation-tools/files/5.0.0/locations @@ -8,8 +8,8 @@ answer BUILDR_vmhgfs yes answer HEADER_DIR /lib/modules/2.6.7-gentoo-r9/build/include answer VMHGFS_CONFED yes answer BINDIR /usr/bin -answer INITDIR /tmp -answer INITSCRIPTSDIR /tmp +answer INITDIR /etc/init.d +answer INITSCRIPTSDIR /etc/init.d answer SBINDIR /usr/sbin answer LIBDIR /usr/lib/vmware-tools directory /etc/vmware-tools diff --git a/app-emulation/vmware-workstation-tools/files/5.0.0/vmware-workstation-tools b/app-emulation/vmware-workstation-tools/files/5.0.0/vmware-workstation-tools index bced33d31939..01b32c3be87a 100755 --- a/app-emulation/vmware-workstation-tools/files/5.0.0/vmware-workstation-tools +++ b/app-emulation/vmware-workstation-tools/files/5.0.0/vmware-workstation-tools @@ -1,6 +1,6 @@ #!/sbin/runscript # -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/files/5.0.0/vmware-workstation-tools,v 1.2 2006/05/08 13:27:49 wolf31o2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/files/5.0.0/vmware-workstation-tools,v 1.3 2006/05/08 13:56:34 wolf31o2 Exp $ # # This script manages the services needed to run VMware software @@ -30,12 +30,12 @@ vmware_tools_load_module() { if [ "`isLoaded "$1"`" = 'yes' ]; then /sbin/rmmod "$1" fi - /sbin/insmod -s -f "/lib/modules/`uname -r`/misc/$1.o" >/dev/null 2>&1 || /sbin/insmod -s -f "$1" >/dev/null 2>&1 || exit 1 + /sbin/insmod -s -f "/lib/modules/`uname -r`/misc/$1.o" >/dev/null 2>&1 || /sbin/insmod -s -f "$1" >/dev/null 2>&1 || eend 1 } vmware_tools_unload_module() { if [ "`isLoaded "$1"`" = 'yes' ]; then - /sbin/rmmod "$1" >/dev/null 2>&1 || exit 1 + /sbin/rmmod "$1" >/dev/null 2>&1 || eend 1 fi } @@ -61,7 +61,7 @@ checkconfig () start () { - checkconfig || exit 1 + checkconfig || eend 1 ebegin "Loading vmware filesystem" vmware_tools_load_module $VMWARE_VMHGFS_MOD diff --git a/app-emulation/vmware-workstation-tools/vmware-workstation-tools-4.5.2.ebuild b/app-emulation/vmware-workstation-tools/vmware-workstation-tools-4.5.2.ebuild index 495be2f927de..ea656ba51bf1 100644 --- a/app-emulation/vmware-workstation-tools/vmware-workstation-tools-4.5.2.ebuild +++ b/app-emulation/vmware-workstation-tools/vmware-workstation-tools-4.5.2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/vmware-workstation-tools-4.5.2.ebuild,v 1.2 2006/05/08 13:08:44 wolf31o2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/vmware-workstation-tools-4.5.2.ebuild,v 1.3 2006/05/08 13:56:33 wolf31o2 Exp $ inherit eutils @@ -17,62 +17,96 @@ IUSE="X" RESTRICT="fetch" DEPEND="" -#RDEPEND="" +RDEPEND="sys-apps/pciutils" + +dir=/opt/vmware/tools +Ddir=${D}/${dir} S=${WORKDIR}/vmware-tools-distrib src_install() { + into ${dir} # install the binaries dosbin sbin/vmware-checkvm dosbin sbin/vmware-guestd dobin bin/vmware-config-tools.pl dobin bin/vmware-toolbox - # NOTE: we deliberately do NOT install the vmware-uninstall-tools.pl - # script - # - # if you want to uninstall vmware from this machine, use Portage! - # install the config files insinto /etc/vmware-tools - for x in \ - installer.sh \ - not_configured \ - poweroff-vm-default \ - poweron-vm-default \ - resume-vm-default \ - suspend-vm-default \ - ; do - doins etc/$x - done - - # populate the locations file - # we replace the timestamp in that file with the current - # timestamp - - insinto /etc/vmware-tools - doins ${FILESDIR}/${PV}/locations - timestamp="`date '+%s'`" - sed -i "s|1109770680|$timestamp|g" ${D}/etc/vmware-tools/locations + doins etc/{installer.sh,not_configured,{powero{ff,n},resume,suspend}-vm-default # install the library files mkdir -p ${D}/usr/lib/vmware-tools cp -r lib/* ${D}/usr/lib/vmware-tools # install the init scripts - doinitd ${FILESDIR}/${PV}/vmware-linux-tools + doinitd ${FILESDIR}/${PV}/${PN} # if we have X, install the default config - if useq X ; then + if use X ; then insinto /etc/X11 doins ${FILESDIR}/${PV}/xorg.conf fi - # and we're done + dodir /etc/vmware/init.d + dodir /etc/vmware/init.d/rc0.d + dodir /etc/vmware/init.d/rc1.d + dodir /etc/vmware/init.d/rc2.d + dodir /etc/vmware/init.d/rc3.d + dodir /etc/vmware/init.d/rc4.d + dodir /etc/vmware/init.d/rc5.d + dodir /etc/vmware/init.d/rc6.d + + # This is to fix a problem where if someone merges vmware and then + # before configuring vmware they upgrade or re-merge the vmware + # package which would rmdir the /etc/vmware/init.d/rc?.d directories. + keepdir /etc/vmware/init.d/rc{0,1,2,3,4,5,6}.d + + # Questions: + einfo "Adding answers to /etc/vmware/locations" + locations="${D}/etc/vmware-tools/locations" + echo "answer BINDIR ${dir}/bin" >> ${locations} + echo "answer LIBDIR ${dir}/lib" >> ${locations} + echo "answer MANDIR ${dir}/man" >> ${locations} + echo "answer DOCDIR ${dir}/doc" >> ${locations} + echo "answer RUN_CONFIGURATOR no" >> ${locations} + echo "answer INITDIR /etc/vmware/init.d" >> ${locations} + echo "answer INITSCRIPTSDIR /etc/vmware/init.d" >> ${locations} + } -pkg_postinst () -{ +pkg_postinst () { + # This must be done after the install to get the mtimes on each file + # right. This perl snippet gets the /etc/vmware/locations file code: + # perl -e "@a = stat('bin/vmware'); print \$a[9]" + # The above perl line and the find line below output the same thing. + # I would think the find line is faster to execute. + # find /opt/vmware/workstation/bin/vmware -printf %T@ + + #Note: it's a bit weird to use ${D} in a preinst script but it should work + #(drobbins, 1 Feb 2002) + + einfo "Generating /etc/vmware/locations file." + d=`echo ${D} | wc -c` + for x in `find ${Ddir} ${D}/etc/vmware` ; do + x="`echo ${x} | cut -c ${d}-`" + if [ -d ${D}/${x} ] ; then + echo "directory ${x}" >> ${D}/etc/vmware/locations + else + echo -n "file ${x}" >> ${D}/etc/vmware/locations + if [ "${x}" == "/etc/vmware/locations" ] ; then + echo "" >> ${D}/etc/vmware/locations + elif [ "${x}" == "/etc/vmware/not_configured" ] ; then + echo "" >> ${D}/etc/vmware/locations + else + echo -n " " >> ${D}/etc/vmware/locations + #perl -e "@a = stat('${D}${x}'); print \$a[9]" >> ${D}/etc/vmware/locations + find ${D}${x} -printf %T@ >> ${D}/etc/vmware/locations + echo "" >> ${D}/etc/vmware/locations + fi + fi + done einfo "To start using the vmware-tools, please run the following:" einfo einfo " /usr/bin/vmware-config-tools.pl" diff --git a/app-emulation/vmware-workstation-tools/vmware-workstation-tools-5.0.0.ebuild b/app-emulation/vmware-workstation-tools/vmware-workstation-tools-5.0.0.ebuild index 5245c078f40d..2016b8643764 100644 --- a/app-emulation/vmware-workstation-tools/vmware-workstation-tools-5.0.0.ebuild +++ b/app-emulation/vmware-workstation-tools/vmware-workstation-tools-5.0.0.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/vmware-workstation-tools-5.0.0.ebuild,v 1.2 2006/05/08 13:08:44 wolf31o2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-workstation-tools/vmware-workstation-tools-5.0.0.ebuild,v 1.3 2006/05/08 13:56:33 wolf31o2 Exp $ inherit eutils @@ -9,8 +9,7 @@ HOMEPAGE="http://www.vmware.com/" # the vmware-tools sources are part of the vmware virtual machine; # they must be installed by hand -MY_PN="VMwareTools-5.0.0-13124" -SRC_URI="http://www.vmware.com/${MY_PN}.tar.gz" +SRC_URI="VMwareTools-5.0.0-13124.tar.gz" LICENSE="vmware" SLOT="0" KEYWORDS="~x86" @@ -18,43 +17,24 @@ IUSE="X" RESTRICT="fetch" DEPEND="" -#RDEPEND="" +RDEPEND="sys-apps/pciutils" + +dir=/opt/vmware/tools +Ddir=${D}/${dir} S=${WORKDIR}/vmware-tools-distrib src_install() { + into ${dir} # install the binaries dosbin sbin/vmware-checkvm dosbin sbin/vmware-guestd dobin bin/vmware-config-tools.pl dobin bin/vmware-toolbox - # NOTE: we deliberately do NOT install the vmware-uninstall-tools.pl - # script - # - # if you want to uninstall vmware from this machine, use Portage! - # install the config files insinto /etc/vmware-tools - for x in \ - installer.sh \ - not_configured \ - poweroff-vm-default \ - poweron-vm-default \ - resume-vm-default \ - suspend-vm-default \ - ; do - doins etc/$x - done - - # populate the locations file - # we replace the timestamp in that file with the current - # timestamp - - insinto /etc/vmware-tools - doins ${FILESDIR}/${PV}/locations - timestamp="`date '+%s'`" - sed -i "s|1109770680|$timestamp|g" ${D}/etc/vmware-tools/locations + doins etc/{installer.sh,not_configured,{powero{ff,n},resume,suspend}-vm-default # install the library files mkdir -p ${D}/usr/lib/vmware-tools @@ -64,16 +44,69 @@ src_install() { doinitd ${FILESDIR}/${PV}/${PN} # if we have X, install the default config - if useq X ; then + if use X ; then insinto /etc/X11 doins ${FILESDIR}/${PV}/xorg.conf fi - # and we're done + dodir /etc/vmware/init.d + dodir /etc/vmware/init.d/rc0.d + dodir /etc/vmware/init.d/rc1.d + dodir /etc/vmware/init.d/rc2.d + dodir /etc/vmware/init.d/rc3.d + dodir /etc/vmware/init.d/rc4.d + dodir /etc/vmware/init.d/rc5.d + dodir /etc/vmware/init.d/rc6.d + + # This is to fix a problem where if someone merges vmware and then + # before configuring vmware they upgrade or re-merge the vmware + # package which would rmdir the /etc/vmware/init.d/rc?.d directories. + keepdir /etc/vmware/init.d/rc{0,1,2,3,4,5,6}.d + + # Questions: + einfo "Adding answers to /etc/vmware/locations" + locations="${D}/etc/vmware-tools/locations" + echo "answer BINDIR ${dir}/bin" >> ${locations} + echo "answer LIBDIR ${dir}/lib" >> ${locations} + echo "answer MANDIR ${dir}/man" >> ${locations} + echo "answer DOCDIR ${dir}/doc" >> ${locations} + echo "answer RUN_CONFIGURATOR no" >> ${locations} + echo "answer INITDIR /etc/vmware/init.d" >> ${locations} + echo "answer INITSCRIPTSDIR /etc/vmware/init.d" >> ${locations} + } -pkg_postinst () -{ +pkg_postinst () { + # This must be done after the install to get the mtimes on each file + # right. This perl snippet gets the /etc/vmware/locations file code: + # perl -e "@a = stat('bin/vmware'); print \$a[9]" + # The above perl line and the find line below output the same thing. + # I would think the find line is faster to execute. + # find /opt/vmware/workstation/bin/vmware -printf %T@ + + #Note: it's a bit weird to use ${D} in a preinst script but it should work + #(drobbins, 1 Feb 2002) + + einfo "Generating /etc/vmware/locations file." + d=`echo ${D} | wc -c` + for x in `find ${Ddir} ${D}/etc/vmware` ; do + x="`echo ${x} | cut -c ${d}-`" + if [ -d ${D}/${x} ] ; then + echo "directory ${x}" >> ${D}/etc/vmware/locations + else + echo -n "file ${x}" >> ${D}/etc/vmware/locations + if [ "${x}" == "/etc/vmware/locations" ] ; then + echo "" >> ${D}/etc/vmware/locations + elif [ "${x}" == "/etc/vmware/not_configured" ] ; then + echo "" >> ${D}/etc/vmware/locations + else + echo -n " " >> ${D}/etc/vmware/locations + #perl -e "@a = stat('${D}${x}'); print \$a[9]" >> ${D}/etc/vmware/locations + find ${D}${x} -printf %T@ >> ${D}/etc/vmware/locations + echo "" >> ${D}/etc/vmware/locations + fi + fi + done einfo "To start using the vmware-tools, please run the following:" einfo einfo " /usr/bin/vmware-config-tools.pl" |