A new version of app-emulation/open-vm-tools has become available: app-emulation/open-vm-tools-0.0.20090121.142982 I have created an ebuild open-vm-tools-0.0.20090121.142982.ebuild Please note that this version does not compile cleanly on my gentoo-sources-2.6.28-r4 kernel. I do have a patch that does allow for clean compilation, however it is well beyond my ebuild knowledge to know how to apply the patch if the kernel is 2.6.28 or greater. I will attch the ebuild for this version. Reproducible: Always
Created attachment 180007 [details] ebuild for subject open-vm-tools version
Created attachment 180008 [details] Patch which allow clean compilatiion on kernel 2.6.28 or greater This patch is applied to page.c in /var/tmp/portage/app-emulation/open-vm-tools-0.0.20090121.142982/work/open-vm-tools-2009.01.21-142982/modules/linux/vmhgfs Apparently patch -p3 is required. After applying patch ebuild open-vm-tools-0.0.20090121.142982.ebuild compile completes sucessfully.
(In reply to comment #0) > A new version of app-emulation/open-vm-tools has become available: > app-emulation/open-vm-tools-0.0.20090121.142982 > I have created an ebuild > open-vm-tools-0.0.20090121.142982.ebuild > Please note that this version does not compile cleanly on my > gentoo-sources-2.6.28-r4 kernel. I do have a patch that does allow for clean > compilation, however it is well beyond my ebuild knowledge to know how to apply > the patch if the kernel is 2.6.28 or greater. > I will attch the ebuild for this version. > > Reproducible: Always > Here is a link to the change log for the new version https://sourceforge.net/project/shownotes.php?group_id=204462&release_id=655343
(In reply to comment #0) > A new version of app-emulation/open-vm-tools has become available: > app-emulation/open-vm-tools-0.0.20090121.142982 > I have created an ebuild > open-vm-tools-0.0.20090121.142982.ebuild > Please note that this version does not compile cleanly on my > gentoo-sources-2.6.28-r4 kernel. I do have a patch that does allow for clean > compilation, however it is well beyond my ebuild knowledge to know how to apply > the patch if the kernel is 2.6.28 or greater. > I will attch the ebuild for this version. > > Reproducible: Always > Correction typo gentoo-sources-2.6.28-r4 should be gentoo-sources-2.6.28-r1
Ok, thanks for the note. There's no real user-visible changes between this version and the one a month ago, so I'm not going to rush this into the tree. I've added a new version into the vmware overlay with a similar patch (the first half was just moving code around without any real change). It should compile with all versions of the kernel, because the define that determines which call to use was only introduced at the same time as the new function name. Please give it a try and let me know if you run into any problems...
Thanks very much. I did the following with success: * Added the vmware overlay and synced * emerge -C open-vm-tools # unmerge my open-vm-tools version * mv /usr/local/portage/app-emulation/ ~/ # get my overlay out of the way * emerge open-vm-tools # install the vmware overlay version This compiled cleanly and /etc/init.d/vmware-tools restart worked without error I am now (or will today) be testing the functionalities of open-vm-tools (copy/paste, shared folders, etc). Bottom line for me is that I like your open-vm-tools-0.0.20090121.142982.ebuild in the vmware overlay. It is much better than what I provided and should be used over the ebuild I attached to this bug. (BTW I had updated my ebuild (locally) to apply the hgfs-page.patch and am curious about the functionality of epatch. In your ebuild there is the line: epatch "${FILESDIR}/2.6.28.1-api-break.patch" How does epatch "know" to patch page.c? Does epatch actually analyze the patch to figure out the path to the file that is going to be patched? I know that it must do so, but the epatch documentation in the "Gentoo Development Guide" does not make that very clear.)
Hiya John, This is possibly not the best place to be teaching you about epatch, but very quickly, you'll need to ensure you "inherit eutils" at the start of your ebuild. You produced a patch yourself, so I'll assume you know a bit about diff. Diff includes the name of the original file and the name of the "new" file just before the difference information starts (so in your attached files, those are bora-vmsoft.orig/hgfs/linux/page.c and bora-vmsoft/hgfs/linux/page.c respectively). Patch (man patch for more) is then run from the current working directory (usually ${S} in ebuilds, but you can cd wherever you like), and it's given a -pX argument where X is a number. Epatch in fact runs from 0 to 5. This basically say show much of the path to strip off (so in your example if there were a file ${S}/hgfs/linux/page.c, then "cd ${S}; patch -p1 < hgfs-page.patch" would patch it. Epatch has other useful parameters (you can create directories full of patches of the form 123_arch_patchname.patch and then point it at the directory, and it'll patch them all in sequence). For further info on epatch, check out the source code in /usr/portage/eclass/eutils.eclass, and follow up with man files for diff and patch. Hope that answers your question. If you want to go into it further, best to try and track me (or someone else) down on IRC #gentoo-dev... 5:)
(Sorry for the question... But thanks for the answer) Host: I am running vmware-workstation-6.5.1.126130 with vmware-modules-1.0.0.23 on an amd64 (stable) core 2 duo platform with tuxonice-sources-2.6.27-r9 kernel. Guest: The x86 (32 bit) virtual operating system is Funtoo with gentoo-sources-2.6.28-r1 kernel. I am running open-vm-tools-0.0.20090121.142982 from the vmware overlay. Results: All results are after starting kde-4.2 as the root user. (The results if I run a a "regular" user are the same). Both root and the regular user are members of the "vmware" group.rc-update shows vmware-tools in run in the default run level. I have these USE flags set in /etc/make.conf: X xinerama icu unity The initial results were that none of the vmware-tools functionalities (Unity, drag and drop, copy/paste, etc) worked at all... I spent considerable time reviewing/changing my guest kernel config all with no effect. However, now I am happy to report that I can get all of these functionalities to work! I noticed /usr/local/portage/layman/vmware/app-emulation/open-vm-tools/files/10-vmware-tools that file is copied to /etc/X11/xinit/xinitrc.d and made executable. From the destination directory name, I assume that the scripts in that directory are supposed to be automatically executed during X initialization. That does not seem to be happening.I have no idea why. If, however, I manually execute 10-vmware-tools (from a X terminal), the script executes and all of the vmware-tools functionalities work. Yea! To me it seems like the open-vm-tools code is working perfectly. The bug is that for reasons unknown, the /etc/X11/xinit/xinitrc.d/10-vmware-tools script is not being executed automatically at xinit time. Here is an ls -al of root's home directory Funtoo xinit # ls -al ~ total 96 drwx------ 12 root root 4096 Jan 31 08:07 . drwxr-xr-x 19 root root 4096 Jan 28 07:13 .. -rw------- 1 root root 51 Jan 31 08:07 .Xauthority -rw------- 1 root root 8505 Jan 31 08:05 .bash_history drwxr-xr-x 2 root root 4096 Jan 24 16:23 .config drwx------ 3 root root 4096 Jan 24 16:23 .dbus -rw-r--r-- 1 root root 516 Jan 24 16:27 .fonts.conf -rw-r--r-- 1 root root 561 Jan 24 12:41 .htoprc drwxr-xr-x 4 root root 4096 Jan 24 16:24 .kde4 -rw-r--r-- 1 root root 0 Jan 21 05:09 .keep -rw------- 1 root root 41 Jan 22 13:14 .lesshst drwx------ 2 root root 4096 Jan 23 15:19 .links drwx------ 3 root root 4096 Jan 28 09:16 .local drwxr-xr-x 3 root root 4096 Jan 31 08:51 .mc drwxr-xr-x 2 root root 4096 Jan 24 18:45 .qt -rw------- 1 root root 102 Jan 31 08:07 .serverauth.2314 drwxr-xr-x 3 root root 4096 Jan 23 09:48 .subversion -rw------- 1 root root 599 Jan 30 09:40 .viminfo drwxr-xr-x 2 root root 4096 Jan 24 16:24 .xine drwxr-xr-x 3 root root 4096 Jan 28 14:16 app-emulation -rw-r--r-- 1 root root 1307 Jan 24 19:26 hgfs-page.patch -rwxr-xr-x 1 root root 54 Jan 27 15:44 unm -rw-r--r-- 1 root root 1793 Jan 23 09:00 xorg.conf.new Funtoo xinit # As you can see, there is no .xinitrc, which I think is the problem. If that does not exist, then I can not see where the scripts in /etc/X11/xinit/xinitrc.d/ get executed.Although the logic does get fairly complicated and maybe I am just not seeing it.
Hiya, I've changed the autostart from the old xinitd files to using the xdg specification. Could you please give that a try (it will still depend on your desktop manager supporting the XDG specs, but I think both gnome and KDE do now)?
I did: layman -s vmware emerge open-vm-tools #this did reinstall the overlay version reboot # bad windows habit Unfortunately still no joy... As best as I can tell, startx continues to work as it did before. According to this --> http://techbase.kde.org/KDE_System_Administration/XDG_Filesystem_Hierarchy apparently kde does support the xdg specification. I am not sure if there is something additional that I need to do. Is there some variable I need to set? Do I need to install xdg-utils? Is there some USE flag I should set? In the meantime, I am going to start setting up a pure gentoo-based VM, in addition to my Funtoo-based VM. Funtoo ~ # eselect profile list Available profile symlink targets: [1] hardened/x86/2.6 [2] selinux/2007.0/x86 [3] selinux/2007.0/x86/hardened [4] default/linux/x86/2008.0 [5] default/linux/x86/2008.0/desktop [6] default/linux/x86/2008.0/developer * [7] default/linux/x86/2008.0/server [8] hardened/linux/x86 Funtoo ~ # emerge --info WARNING: One or more repositories have missing repo_name entries: /usr/local/portage/profiles/repo_name NOTE: Each repo_name entry should be a plain text file containing a unique name for the repository on the first line. Portage 2.2_rc23-r1 (default/linux/x86/2008.0/developer, gcc-4.3.2, glibc-2.9_p20081201-r1, 2.6.28-gentoo-r1 i686) ================================================================= System uname: Linux-2.6.28-gentoo-r1-i686-Intel-R-_Core-TM-2_CPU_T7200_@_2.00GHz-with-glibc2.0 Timestamp of tree: Wed, 28 Jan 2009 05:35:01 +0000 app-shells/bash: 3.2_p48 dev-java/java-config: 1.3.7-r1, 2.1.7 dev-lang/python: 2.5.4-r2 dev-util/cmake: 2.6.2-r1 sys-apps/baselayout: 2.0.0-r1 sys-apps/openrc: 0.4.1 sys-apps/sandbox: 1.3.3 sys-devel/autoconf: 2.63 sys-devel/automake: 1.7.9-r1, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.19 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.28-r1 ACCEPT_KEYWORDS="x86 ~x86" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ARCH="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -mtune=core2 -pipe" CHOST="i686-pc-linux-gnu" CLASSPATH="." CLEAN_DELAY="5" COLLISION_IGNORE="/lib/modules" CONFIG_PROTECT="/etc /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CVS_RSH="ssh" CXXFLAGS="-O2 -mtune=core2 -pipe" DISTDIR="/usr/portage/distfiles" EDITOR="/bin/nano" ELIBC="glibc" EMERGE_DEFAULT_OPTS="--verbose --with-bdeps y" EMERGE_WARNING_DELAY="10" FEATURES="collision-protect cvs digest distlocks fixpackages multilib-strict parallel-fetch preserve-libs protect-owned sandbox sfperms sign splitdebug strict stricter unmerge-orphans userfetch userpriv usersandbox" FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"" GCC_SPECS="" GDK_USE_XFT="1" GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo" HOME="/root" INFOPATH="/usr/share/info:/usr/share/binutils-data/i686-pc-linux-gnu/2.19/info:/usr/share/gcc-data/i686-pc-linux-gnu/4.3.2/info" INPUT_DEVICES="keyboard mouse evdev" I_KNOW_WHAT_I_AM_DOING="yes" JAVAC="/bin/javac" JDK_HOME="" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LDFLAGS="-Wl,-O1" LESS="-R -M --shift 5" LESSOPEN="|lesspipe.sh %s" LOGNAME="root" LS_COLORS="rs=0:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:" MAIL="/var/mail/root" MAKEOPTS="-j3" MANPATH="/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/i686-pc-linux-gnu/2.19/man:/usr/share/gcc-data/i686-pc-linux-gnu/4.3.2/man:/etc/java-config/system-vm/man/:/usr/qt/3/doc/man" NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OLDPWD="/root/.local/share/mime/packages" OPENGL_PROFILE="xorg-x11" PAGER="/usr/bin/less" PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.3.2:/usr/qt/3/bin" PKGDIR="/usr/portage/packages" PKG_CONFIG_PATH="/usr/qt/3/lib/pkgconfig" PORTAGE_ARCHLIST="ppc s390 amd64 x86 ppc64 x86-fbsd m68k arm sparc sh mips ia64 alpha hppa sparc-fbsd" PORTAGE_BINHOST_CHUNKSIZE="3000" PORTAGE_BIN_PATH="/usr/lib/portage/bin" PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png" PORTAGE_CONFIGROOT="/" PORTAGE_COUNTER_HASH="0ec04197864459c0b1c3c1aaf9bf5015" PORTAGE_DEBUG="0" PORTAGE_DEPCACHEDIR="/var/cache/edb/dep" PORTAGE_ELOG_CLASSES="log warn error" PORTAGE_ELOG_MAILFROM="portage@localhost" PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}" PORTAGE_ELOG_MAILURI="root" PORTAGE_ELOG_SYSTEM="save" PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5" PORTAGE_FETCH_RESUME_MIN_SIZE="350K" PORTAGE_GID="250" PORTAGE_INST_GID="0" PORTAGE_INST_UID="0" PORTAGE_NICENESS="3" PORTAGE_PYM_PATH="/usr/lib/portage/pym" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_RSYNC_RETRIES="3" PORTAGE_TMPDIR="/var/tmp" PORTAGE_VERBOSE="1" PORTAGE_WORKDIR_MODE="0700" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/layman/vmware /usr/local/portage" PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND" PWD="/root" QMAKESPEC="linux-g++" QTDIR="/usr/qt/3" RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"" ROOT="/" ROOTPATH="/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.3.2:/usr/qt/3/bin" RPMDIR="/usr/portage/rpm" SHELL="/bin/bash" SHLVL="1" SSH_CLIENT="192.168.1.105 57231 22" SSH_CONNECTION="192.168.1.105 57231 192.168.1.113 22" SSH_TTY="/dev/pts/0" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" TERM="xterm" USE="X acpi alsa berkdb bzip2 cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread encode esd evo fam fortran gdbm gif git gpm gstreamer gtk hal iconv icu isdnlog jpeg kde ldap libnotify mad mailwrapper midi mikmod mmx mp3 mpeg mudflap mysql ncurses nls nptl nptlonly ogg opengl openmp pam pcre pdf perl png ppds pppd python qt3 qt3support qt4 quicktime readline reflection sdl session snmp spell spl sse sse2 ssl ssse3 startup-notification subversion svg sysfs tcpd tiff truetype unicode unity usb vorbis webkit win32codecs x86 xinerama xml xorg xscreensaver xulrunner xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="vmware fbdev" USER="root" USERLAND="GNU" USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES USERLAND VIDEO_CARDS" USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND" USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d" VIDEO_CARDS="vmware fbdev" XDG_DATA_DIRS="/usr/share:/usr/local/share" XSESSION="kde-4.2" _="/usr/bin/emerge"
I'm afraid I don't know much about xdg either, but as far as I'm aware, putting the file in /etc/xdg/autostart/<file>.desktop should be enough for anything using the spec. We're also getting a bit beyond the scope of this bug, if you'd like me to keep looking into this, it might be best to do it on another bug, if that's ok?
I agree as to opening a new bug. It certainly seems like open-vm-tools is working. At this point the bug seems to be in the logic during the X initialization. Should I open the new bug? Be happy to, it just isn't clear if you were offering to.
You might as well file it, but either mention in the report that you were asked to file the bug, or if you're using the advanced report form, make sure you assign it directly to vmware@gentoo.org. Thanks... 5:)
I'm currently trying to compile the VM tools against a .28 kernel and find that it fails, it'd be good if this new version (particularly the patch mentioned) could make it's way into Portage, saving me adding overlays temporarily to get the VM tools operational on my virtual Gentoo servers. ta
Ok, all done and this is now in the tree. Please give it a couple of hours to sync and then you should be good to go. If there's any problems, feel free to reopen this bug (or comment here if you can't reopen it)... 5:)
*** Bug 258550 has been marked as a duplicate of this bug. ***