Skip to main content
  1. All Posts/

vmware-tools-patches

Tools Shell

VMware Tools Patches

Patch VMware Tools source code for a variety of VMware Tools and kernel versions.

Quickest Start (The easiest way)

$ git clone https://github.com/rasa/vmware-tools-patches.git
$ cd vmware-tools-patches
$ ./patched-open-vm-tools.sh

The above script has been provided which generally should always work, automatically invoking commands described in the following section “Quick Start”
To update and re-patch later, remove the vmware-tools-patches subdirectory with the previous download and re-run the script.

Quick Start

To build VMware Tools, do the following:

  1. Checkout the repository:

    $ git clone https://github.com/rasa/vmware-tools-patches.git
  2. (Optional) Copy your patch(es) into the appropriate directory in the patches directory. Patches must end in .patch, or .diff and be properly formatted. For example:

    $ cp great-new.patch vmware-tools-patches/patches/vmhgfs
  3. Copy or download the version of VMware Tools you wish to use into the vmware-tools-patches folder. One way to do this is using download-tools.sh and pass it the associated VMWare Fusion version number:

    $ cd vmware-tools-patches
    $ ./download-tools.sh latest
    <p>
      It is strongly suggested to use the <a rel="nofollow noopener" target="_blank" href="#tested-vmware-tools-versions">latest version</a> of VMware Tools.<br /> VMware Tools is also included inside the <code>linux.iso</code> file that is shipped with VMware Fusion, Player, and Workstation. </li> 
      
      <li>
        Untar the tarball, and apply the patches:</p> <pre>$ cd vmware-tools-patches
    

    $ ./untar-and-patch.sh

  4.   <li>
        Run the <code>vmware-install.pl</code> installer to install VMware Tools:</p> <pre>$ ./compile.sh</pre>
      </li></ol> 
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-tested-kernels" class="anchor" aria-hidden="true" href="#tested-kernels"></a>Tested Kernels
      </h2>
      
      <p>
        With the patches applied, at least one version of VMware Tools listed <a rel="nofollow noopener" target="_blank" href="#tested-vmware-tools-versions">below</a>, compiles successfully with the following Linux kernels:
      </p>
      
      <ul dir="auto">
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_4.0">4.0.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.19">3.19.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.18">3.18.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.17">3.17.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.16">3.16.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.13">3.13.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.12">3.12.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.11">3.11.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.8">3.8.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.5">3.5.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_2.6.32">2.6.32</a>
        </li>
      </ul>
      
      <p>
        We have not received any reports of the patches failing on the following kernels, so presumably they apply successfully:
      </p>
      
      <ul dir="auto">
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.15">3.15.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.14">3.14.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.10">3.10.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.9">3.9.x</a>
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="http://kernelnewbies.org/Linux_3.7">3.7.x</a> and earlier
        </li>
      </ul>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-tested-vmware-tools-versions" class="anchor" aria-hidden="true" href="#tested-vmware-tools-versions"></a>Tested VMware Tools Versions
      </h2>
      
      <p>
        The included patches have been tested with the following versions of VMware Tools:
      </p>
      
      <ul dir="auto">
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.5.0/4352717/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-10.0.10-4301679.tar.gz</a> (VMware Fusion 8.5.0/1/2 & Workstation 12.5.0/1/2)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.1.1/3771013/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-10.0.6-3595377.tar.gz</a> (VMware Fusion 8.1.1 & Workstation 12.1.1)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.1.0/3272237/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-10.0.5-3228253.tar.gz</a> (VMware Fusion 8.1.0 & Workstation 12.1.0)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.0.2/3164312/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-10.0.1-3160059.tar.gz</a> (VMware Fusion 8.0.2 & Workstation 12.0.1)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.0.1/3094680/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-10.0.0-2977863.tar.gz</a> (VMware Fusion 8.0.1)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.0.0/2985594/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-10.0.0-2977863.tar.gz</a> (VMware Fusion 8.0.0 & Workstation 12.0.0)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.3/3204469/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.9.4-3193940.tar.gz</a> (VMware Fusion 7.1.3 & Workstation 11.1.3)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.2/2779224/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.9.3-2759765.tar.gz</a> (VMware Fusion 7.1.2 & Workstation 11.1.2)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.1/2498930/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.9.2-2496486.tar.gz</a> (VMware Fusion 7.1.1 & Workstation 11.1.0)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.0/2314774/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.9.0-2304977.tar.gz</a> (VMware Fusion 7.1.0 & Workstation 11.0.0)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.0.1/2235595/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.8.4-2202052.tar.gz</a> (VMware Fusion 7.0.1)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.0.0/2075534/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.8.3-2075148.tar.gz</a> (VMware Fusion 7.0.0)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.6/2684343/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.6.6-2649738.tar.gz</a> (VMware Fusion 6.0.6 & Workstation 10.0.5/6/7)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.3/1747349/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.6.2-1688356.tar.gz</a> (VMware Fusion 6.0.3/4/5 & Workstation 10.0.2/3/4)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.2/1398658/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.6.1-1378637.tar.gz</a> (VMware Fusion 6.0.2 & Workstation 10.0.1)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.1/1331545/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.6.0-1294478.tar.gz</a> (VMware Fusion 6.0.0/1 & Workstation 10.0.0)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/5.0.5/1945692/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.2.4-1398046.tar.gz</a> (VMware Fusion 5.0.5 & Workstation 9.0.3)
        </li>
        <li>
          <a rel="nofollow noopener" target="_blank" href="https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/5.0.4/1435862/packages/com.vmware.fusion.tools.linux.zip.tar">VMwareTools-9.2.3-1031360.tar.gz</a> (VMware Fusion 5.0.4 & Workstation 9.0.2)
        </li>
      </ul>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-encountering-failures" class="anchor" aria-hidden="true" href="#encountering-failures"></a>Encountering Failures
      </h2>
      
      <p>
        If one or more patches do not apply successfully, you may get an error during compilation, such as
      </p>
      
      <pre class="notranslate"><code>vmhgfs-only/link.c:186:10: error: implicit declaration of function ‘vfs_readlink’ [-Werror=implicit-function-declaration]
    

      <p>
        This indicates the <code>vmhgfs</code> kernel module failed to build and was not installed. That may be acceptable, as VMware Tools still installed successfully, but without the &#8220;shared folder&#8221; functionality provided by the <code>vmhgfs</code> module.
      </p>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-required-patch-format" class="anchor" aria-hidden="true" href="#required-patch-format"></a>Required Patch Format
      </h2>
      
      <p>
        Please note your patches must contain only one directory name in them. For example, the following patches will work:
      </p>
      
      <pre class="notranslate"><code>+--- vmhgfs-only/link.c.orig	2014-04-23 10:11:34.891106441 +0100
    

    ++++ vmhgfs-only/link.c 2014-04-23 00:49:03.000000000 +0100

      <p>
        or
      </p>
      
      <pre class="notranslate"><code>+--- vmhgfs-only.orig/link.c	2014-04-23 10:11:34.891106441 +0100
    

    ++++ vmhgfs-only/link.c 2014-04-23 00:49:03.000000000 +0100

      <p>
        The following patches will not work:
      </p>
      
      <pre class="notranslate"><code>+--- link.c.orig	2014-04-23 10:11:34.891106441 +0100
    

    ++++ link.c 2014-04-23 00:49:03.000000000 +0100

      <p>
        or
      </p>
      
      <pre class="notranslate"><code>+--- path/to/vmhgfs-only/link.c.orig	2014-04-23 10:11:34.891106441 +0100
    

    ++++ path/to/vmhgfs-only/link.c 2014-04-23 00:49:03.000000000 +0100

      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-dependencies" class="anchor" aria-hidden="true" href="#dependencies"></a>Dependencies
      </h2>
      
      <p>
        If you use download-tools.sh, to download a VMware Tools file, the script will need the following installed:
      </p>
      
      <ul dir="auto">
        <li>
          sevenzip or sudo rights
        </li>
        <li>
          unzip
        </li>
        <li>
          wget
        </li>
        <li>
          zip
        </li>
      </ul>
      
      <p>
        If <code>apt-get</code> is installed on your system, the following packages will be installed when you first run compile.sh or untar-and-patch-and-compile.sh.sh:
      </p>
      
      <ul dir="auto">
        <li>
          linux-headers-$(uname -r)
        </li>
        <li>
          build-essential
        </li>
        <li>
          dkms
        </li>
        <li>
          patch
        </li>
        <li>
          perl
        </li>
        <li>
          psmisc
        </li>
      </ul>
      
      <p>
        If <code>yum</code> is installed on your system, the following packages will be installed when you first run compile.sh or untar-and-patch-and-compile.sh.sh:
      </p>
      
      <ul dir="auto">
        <li>
          gcc
        </li>
        <li>
          glibc-headers
        </li>
        <li>
          kernel-devel
        </li>
        <li>
          kernel-headers
        </li>
        <li>
          make
        </li>
        <li>
          perl
        </li>
      </ul>
      
      <p>
        If neither <code>apt-get</code> or <code>yum</code> is installed, you will need to install these (or equivalent) packages manually, before starting.
      </p>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-contributing" class="anchor" aria-hidden="true" href="#contributing"></a>Contributing
      </h2>
      
      <p>
        To contribute to this project, please see CONTRIBUTING.md.
      </p>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-bugs" class="anchor" aria-hidden="true" href="#bugs"></a>Bugs
      </h2>
      
      <p>
        To view existing bugs, or report a new bug, please see issues.
      </p>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-changelog" class="anchor" aria-hidden="true" href="#changelog"></a>Changelog
      </h2>
      
      <p>
        To view the version history for this project, please see CHANGELOG.md.
      </p>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-license" class="anchor" aria-hidden="true" href="#license"></a>License
      </h2>
      
      <p>
        This project is MIT licensed.
      </p>
      
      <h2 dir="auto">
        <a rel="nofollow noopener" target="_blank" id="user-content-contact" class="anchor" aria-hidden="true" href="#contact"></a>Contact
      </h2>
      
      <p>
        This project was created and is maintained by Ross Smith II <a rel="nofollow noopener" target="_blank" href="https://coderwall.com/rasa"></a><br /> Feedback, suggestions, and enhancements are welcome.
      </p>