diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8a2e58d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/open-vm-tools-10.3.0-8931395.tar.gz diff --git a/.open-vm-tools.metadata b/.open-vm-tools.metadata new file mode 100644 index 0000000..8e6b47c --- /dev/null +++ b/.open-vm-tools.metadata @@ -0,0 +1 @@ +236d8159882ab2663043232a59f84eba144d0345 SOURCES/open-vm-tools-10.3.0-8931395.tar.gz diff --git a/SOURCES/0002-Update-cloud-init-handling.patch b/SOURCES/0002-Update-cloud-init-handling.patch new file mode 100644 index 0000000..52b8fdb --- /dev/null +++ b/SOURCES/0002-Update-cloud-init-handling.patch @@ -0,0 +1,198 @@ +From 83724a3f0c7ae5bc6586d5fd52a5b432fdd70fab Mon Sep 17 00:00:00 2001 +From: Miroslav Rezanina +Date: Tue, 16 Oct 2018 07:20:56 +0200 +Subject: Update cloud-init handling + +This update of cloud-init changes for 10.3.0. +--- + open-vm-tools/libDeployPkg/linuxDeployment.c | 57 ++++++++++++++-------- + .../libDeployPkg/linuxDeploymentUtilities.c | 3 +- + 2 files changed, 38 insertions(+), 22 deletions(-) + +diff --git a/libDeployPkg/linuxDeployment.c b/libDeployPkg/linuxDeployment.c +index 996f184..34c8b95 100644 +--- a/libDeployPkg/linuxDeployment.c ++++ b/libDeployPkg/linuxDeployment.c +@@ -139,7 +139,7 @@ static bool CopyFileToDirectory(const char* srcPath, const char* destPath, + const char* fileName); + static DeployPkgStatus Deploy(const char* pkgName); + static char** GetFormattedCommandLine(const char* command); +-int ForkExecAndWaitCommand(const char* command); ++int ForkExecAndWaitCommand(const char* command, bool ignoreStdErr); + static void SetDeployError(const char* format, ...); + static const char* GetDeployError(void); + static void NoLogging(int level, const char* fmtstr, ...); +@@ -920,7 +920,7 @@ CloudInitSetup(const char *tmpDirPath) + "/bin/mkdir -p %s", cloudInitTmpDirPath); + command[sizeof(command) - 1] = '\0'; + +- forkExecResult = ForkExecAndWaitCommand(command); ++ forkExecResult = ForkExecAndWaitCommand(command, false); + if (forkExecResult != 0) { + SetDeployError("Error creating %s dir: %s", + cloudInitTmpDirPath, +@@ -937,7 +937,7 @@ CloudInitSetup(const char *tmpDirPath) + "/usr/bin/test -f %s/nics.txt", tmpDirPath); + command[sizeof(command) - 1] = '\0'; + +- forkExecResult = ForkExecAndWaitCommand(command); ++ forkExecResult = ForkExecAndWaitCommand(command, false); + + /* + * /usr/bin/test -f returns 0 if the file exists +@@ -946,7 +946,7 @@ CloudInitSetup(const char *tmpDirPath) + */ + if (forkExecResult == 0) { + sLog(log_info, "nics.txt file exists. Copying.."); +- if(!CopyFileToDirectory(tmpDirPath, cloudInitTmpDirPath, "nics.txt")) { ++ if (!CopyFileToDirectory(tmpDirPath, cloudInitTmpDirPath, "nics.txt")) { + goto done; + } + } +@@ -973,7 +973,7 @@ CloudInitSetup(const char *tmpDirPath) + } + + sLog(log_info, "Copying main configuration file cust.cfg"); +- if(!CopyFileToDirectory(tmpDirPath, cloudInitTmpDirPath, "cust.cfg")) { ++ if (!CopyFileToDirectory(tmpDirPath, cloudInitTmpDirPath, "cust.cfg")) { + goto done; + } + +@@ -992,7 +992,7 @@ done: + "/bin/rm -rf %s", + cloudInitTmpDirPath); + command[sizeof(command) - 1] = '\0'; +- ForkExecAndWaitCommand(command); ++ ForkExecAndWaitCommand(command, false); + } + sLog(log_error, "Setting generic error status in vmx. \n"); + SetCustomizationStatusInVmx(TOOLSDEPLOYPKG_RUNNING, +@@ -1016,7 +1016,7 @@ CopyFileToDirectory(const char* srcPath, const char* destPath, + snprintf(command, sizeof(command), "/bin/cp %s/%s %s/%s.tmp", srcPath, + fileName, destPath, fileName); + command[sizeof(command) - 1] = '\0'; +- forkExecResult = ForkExecAndWaitCommand(command); ++ forkExecResult = ForkExecAndWaitCommand(command, false); + if (forkExecResult != 0) { + SetDeployError("Error while copying file %s: %s", fileName, + strerror(errno)); +@@ -1026,7 +1026,7 @@ CopyFileToDirectory(const char* srcPath, const char* destPath, + fileName, destPath, fileName); + command[sizeof(command) - 1] = '\0'; + +- forkExecResult = ForkExecAndWaitCommand(command); ++ forkExecResult = ForkExecAndWaitCommand(command, false); + if (forkExecResult != 0) { + SetDeployError("Error while renaming temp file %s: %s", fileName, + strerror(errno)); +@@ -1090,7 +1090,7 @@ UseCloudInitWorkflow(const char* dirPath) + sLog(log_info, "cust.cfg is found in '%s' directory.", dirPath); + } + +- forkExecResult = ForkExecAndWaitCommand(cloudInitCommand); ++ forkExecResult = ForkExecAndWaitCommand(cloudInitCommand, true); + if (forkExecResult != 0) { + sLog(log_info, "cloud-init is not installed"); + free(cfgFullPath); +@@ -1194,7 +1194,7 @@ Deploy(const char* packageName) + deployPkgStatus = CloudInitSetup(tmpDirPath); + } else { + sLog(log_info, "Executing traditional GOSC workflow"); +- deploymentResult = ForkExecAndWaitCommand(command); ++ deploymentResult = ForkExecAndWaitCommand(command, false); + free(command); + + if (deploymentResult != CUST_SUCCESS) { +@@ -1260,7 +1260,7 @@ Deploy(const char* packageName) + strcat(cleanupCommand, tmpDirPath); + + sLog(log_info, "Launching cleanup. \n"); +- if (ForkExecAndWaitCommand(cleanupCommand) != 0) { ++ if (ForkExecAndWaitCommand(cleanupCommand, false) != 0) { + sLog(log_warning, "Error while clean up tmp directory %s: (%s)", + tmpDirPath, strerror (errno)); + } +@@ -1289,7 +1289,7 @@ Deploy(const char* packageName) + int rebootComandResult = 0; + do { + sLog(log_info, "Rebooting\n"); +- rebootComandResult = ForkExecAndWaitCommand("/sbin/telinit 6"); ++ rebootComandResult = ForkExecAndWaitCommand("/sbin/telinit 6", false); + sleep(1); + } while (rebootComandResult == 0); + sLog(log_error, "telinit returned error %d\n", rebootComandResult); +@@ -1499,12 +1499,13 @@ GetFormattedCommandLine(const char* command) + * Fork off the command and wait for it to finish. Classical Linux/Unix + * fork-and-exec. + * +- * @param [IN] command Command to execute ++ * @param [IN] command Command to execute ++ * @param [IN] ignoreStdErr If we ignore stderr when cmd's return code is 0 + * @return Return code from the process (or -1) + * + **/ + int +-ForkExecAndWaitCommand(const char* command) ++ForkExecAndWaitCommand(const char* command, bool ignoreStdErr) + { + ProcessHandle hp; + int retval; +@@ -1522,14 +1523,30 @@ ForkExecAndWaitCommand(const char* command) + + Process_RunToComplete(hp, 100); + sLog(log_info, "Customization command output: %s\n", Process_GetStdout(hp)); +- +- if(Process_GetExitCode(hp) == 0 && strlen(Process_GetStderr(hp)) > 0) { +- // Assume command failed if it wrote to stderr, even if exitCode is 0 +- sLog(log_error, "Customization command failed: %s\n", Process_GetStderr(hp)); +- retval = -1; ++ retval = Process_GetExitCode(hp); ++ ++ if (retval == 0) { ++ if (strlen(Process_GetStderr(hp)) > 0) { ++ if (!ignoreStdErr) { ++ // Assume command failed if it wrote to stderr, even if exitCode is 0 ++ sLog(log_error, ++ "Customization command failed with stderr: %s\n", ++ Process_GetStderr(hp)); ++ retval = -1; ++ } else { ++ // If we choose to ignore stderr, we do not return -1 when return ++ // code is 0. e.g, PR2148977, "cloud-init -v" will return 0 ++ // even there is output in stderr ++ sLog(log_info, "Ignoring stderr output: %s\n", Process_GetStderr(hp)); ++ } ++ } + } else { +- retval = Process_GetExitCode(hp); ++ sLog(log_error, ++ "Customization command failed with exitcode: %d, stderr: %s\n", ++ retval, ++ Process_GetStderr(hp)); + } ++ + Process_Destroy(hp); + return retval; + } +diff --git a/libDeployPkg/linuxDeploymentUtilities.c b/libDeployPkg/linuxDeploymentUtilities.c +index 83f942d..93e1b0a 100644 +--- a/libDeployPkg/linuxDeploymentUtilities.c ++++ b/libDeployPkg/linuxDeploymentUtilities.c +@@ -1,5 +1,5 @@ + /********************************************************* +- * Copyright (C) 2016-2017 VMware, Inc. All rights reserved. ++ * Copyright (C) 2016-2018 VMware, Inc. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published +@@ -24,7 +24,6 @@ + #include + #include "linuxDeploymentUtilities.h" + +-extern int ForkExecAndWaitCommand(const char* command); + extern LogFunction sLog; + + /** +-- +1.8.3.1 + diff --git a/SOURCES/0003-hgfsPlugin-crash-fix.patch b/SOURCES/0003-hgfsPlugin-crash-fix.patch new file mode 100644 index 0000000..3fde817 --- /dev/null +++ b/SOURCES/0003-hgfsPlugin-crash-fix.patch @@ -0,0 +1,30 @@ +From 549817041fd5f6d8625431ccca94e41ebac86b55 Mon Sep 17 00:00:00 2001 +From: Miroslav Rezanina +Date: Tue, 16 Oct 2018 07:22:40 +0200 +Subject: hgfsPlugin crash fix + +--- + open-vm-tools/services/plugins/hgfsServer/hgfsPlugin.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/services/plugins/hgfsServer/hgfsPlugin.c b/services/plugins/hgfsServer/hgfsPlugin.c +index c5ef872..129fa75 100644 +--- a/services/plugins/hgfsServer/hgfsPlugin.c ++++ b/services/plugins/hgfsServer/hgfsPlugin.c +@@ -1090,6 +1090,13 @@ ToolsOnLoad(ToolsAppCtx *ctx) + } + + /* ++ * If not running in a VMware VM, return NULL to disable the plugin. ++ */ ++ if (!ctx->isVMware) { ++ return NULL; ++ } ++ ++ /* + * Check for VM is running in a hosted environment and if so initialize + * the Shared Folders HGFS client redirector. + */ +-- +1.8.3.1 + diff --git a/SOURCES/vgauthd.service b/SOURCES/vgauthd.service new file mode 100644 index 0000000..d5fef2c --- /dev/null +++ b/SOURCES/vgauthd.service @@ -0,0 +1,12 @@ +[Unit] +Description=VGAuth Service for open-vm-tools +Documentation=http://github.com/vmware/open-vm-tools +ConditionVirtualization=vmware +PartOf=vmtoolsd.service + +[Service] +ExecStart=/usr/bin/VGAuthService -s +TimeoutStopSec=5 + +[Install] +RequiredBy=vmtoolsd.service diff --git a/SOURCES/vmtoolsd-init.service b/SOURCES/vmtoolsd-init.service new file mode 100644 index 0000000..08dd10d --- /dev/null +++ b/SOURCES/vmtoolsd-init.service @@ -0,0 +1,14 @@ +[Unit] +Description=One-time configuration for vmtoolsd +ConditionVirtualization=vmware +ConditionPathExists=|!/etc/vmware-tools/GuestProxyData/server/cert.pem +ConditionPathExists=|!/etc/vmware-tools/GuestProxyData/server/key.pem +PartOf=vmtoolsd.service + +[Service] +Type=oneshot +RemainAfterExit=no +ExecStart=/usr/bin/vmware-guestproxycerttool -g + +[Install] +RequiredBy=vmtoolsd.service diff --git a/SOURCES/vmtoolsd.service b/SOURCES/vmtoolsd.service new file mode 100644 index 0000000..773040d --- /dev/null +++ b/SOURCES/vmtoolsd.service @@ -0,0 +1,16 @@ +[Unit] +Description=Service for virtual machines hosted on VMware +Documentation=http://github.com/vmware/open-vm-tools +ConditionVirtualization=vmware +Requires=vgauthd.service +After=vgauthd.service +DefaultDependencies=no +Before=cloud-init-local.service + +[Service] +ExecStart=/usr/bin/vmtoolsd +TimeoutStopSec=5 + +[Install] +WantedBy=multi-user.target +Also=vgauthd.service diff --git a/SPECS/open-vm-tools.spec b/SPECS/open-vm-tools.spec new file mode 100644 index 0000000..13759ec --- /dev/null +++ b/SPECS/open-vm-tools.spec @@ -0,0 +1,654 @@ +################################################################################ +### Copyright 2013-18 VMware, Inc. All rights reserved. +### +### RPM SPEC file for building open-vm-tools packages. +### +### +### This program is free software; you can redistribute it and/or modify +### it under the terms of version 2 of the GNU General Public License as +### published by the Free Software Foundation. +### +### This program is distributed in the hope that it will be useful, +### but WITHOUT ANY WARRANTY; without even the implied warranty of +### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +### GNU General Public License for more details. +### +### You should have received a copy of the GNU General Public License +### along with this program; if not, write to the Free Software +### Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +################################################################################ + +%global _hardened_build 1 +%global majorversion 10.3 +%global minorversion 0 +%global toolsbuild 8931395 +%global toolsversion %{majorversion}.%{minorversion} +%global toolsdaemon vmtoolsd +%global vgauthdaemon vgauthd + +Name: open-vm-tools +Version: %{toolsversion} +Release: 2%{?dist} +Summary: Open Virtual Machine Tools for virtual machines hosted on VMware +Group: Applications/System +License: GPLv2 +URL: https://github.com/vmware/%{name} +Source0: https://github.com/vmware/%{name}/releases/download/stable-%{version}/%{name}-%{version}-%{toolsbuild}.tar.gz +Source1: %{toolsdaemon}-init.service +Source2: %{toolsdaemon}.service +Source3: %{vgauthdaemon}.service +ExclusiveArch: x86_64 + +Patch0002: 0002-Update-cloud-init-handling.patch +Patch0003: 0003-hgfsPlugin-crash-fix.patch + +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: libtool +BuildRequires: gcc-c++ +BuildRequires: doxygen +# Fuse is optional and enables vmblock-fuse +BuildRequires: fuse-devel +BuildRequires: glib2-devel >= 2.14.0 +BuildRequires: gdk-pixbuf2-xlib-devel +BuildRequires: gtk3-devel >= 3.10.0 +BuildRequires: gtkmm30-devel >= 3.10.0 +BuildRequires: libdnet-devel +BuildRequires: libicu-devel +BuildRequires: libmspack-devel +# Unfortunately, xmlsec1-openssl does not add libtool-ltdl +# dependency, so we need to add it ourselves. +BuildRequires: libtool-ltdl-devel +BuildRequires: libX11-devel +BuildRequires: libXext-devel +BuildRequires: libXi-devel +BuildRequires: libXinerama-devel +BuildRequires: libXrandr-devel +BuildRequires: libXrender-devel +BuildRequires: libXtst-devel +BuildRequires: openssl-devel +BuildRequires: pam-devel +BuildRequires: procps-devel +BuildRequires: rpcgen +BuildRequires: systemd +BuildRequires: libtirpc-devel +BuildRequires: xmlsec1-openssl-devel + +Requires: coreutils +Requires: fuse +Requires: libdrm +Requires: iproute +Requires: grep +Requires: pciutils +Requires: sed +Requires: systemd +Requires: systemd-libs +Requires: tar +Requires: which +# xmlsec1-openssl needs to be added explicitly +Requires: xmlsec1-openssl + +# open-vm-tools >= 10.0.0 do not require open-vm-tools-deploypkg +# provided by VMware. That functionality is now available as part +# of open-vm-tools package itself. +Obsoletes: open-vm-tools-deploypkg <= 10.0.5 + +%description +The %{name} project is an open source implementation of VMware Tools. It +is a suite of open source virtualization utilities and drivers to improve the +functionality, user experience and administration of VMware virtual machines. +This package contains only the core user-space programs and libraries of +%{name}. + +%package desktop +Summary: User experience components for Open Virtual Machine Tools +Group: System Environment/Libraries +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description desktop +This package contains only the user-space programs and libraries of +%{name} that are essential for improved user experience of VMware virtual +machines. + +%package devel +Summary: Development libraries for Open Virtual Machine Tools +Group: Development/Libraries +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package contains only the user-space programs and libraries of +%{name} that are essential for developing customized applications for +VMware virtual machines. + +%package test +Summary: Test utilities for Open Virtual Machine Tools +Group: Development/Libraries +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description test +This package contains only the test utilities for %{name} that are +useful for verifying the functioning of %{name} in VMware virtual +machines. + +%prep +%setup -q -n %{name}-%{version}-%{toolsbuild} + +%patch0002 -p1 +%patch0003 -p1 + +%build +# Required for regenerating configure script when +# configure.ac get modified +autoreconf -vif + +%global usetirpc with-tirpc + +%configure \ + --without-kernel-modules \ + --enable-xmlsec1 \ + --enable-resolutionkms \ + --%{usetirpc} \ + --disable-static + +sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool +%make_build + +%install +export DONT_STRIP=1 +%make_install + +# Remove exec bit from config files +chmod a-x %{buildroot}%{_sysconfdir}/pam.d/* +chmod a-x %{buildroot}%{_sysconfdir}/vmware-tools/*.conf +chmod a-x %{buildroot}%{_sysconfdir}/vmware-tools/vgauth/schemas/* + +# Remove exec bit on udev rules. +chmod a-x %{buildroot}%{_udevrulesdir}/99-vmware-scsi-udev.rules + +# Remove the DOS line endings +sed -i "s|\r||g" README + +# Remove "Encoding" key from the "Desktop Entry" +sed -i "s|^Encoding.*$||g" %{buildroot}%{_sysconfdir}/xdg/autostart/vmware-user.desktop + +# Remove unnecessary files from packaging +find %{buildroot}%{_libdir} -name '*.la' -delete +rm -fr %{buildroot}%{_defaultdocdir} +rm -f docs/api/build/html/FreeSans.ttf + +# Remove mount.vmhgfs & symlink +rm -fr %{buildroot}%{_sbindir} %{buildroot}/sbin/mount.vmhgfs + +# Move vm-support to /usr/bin +mv %{buildroot}%{_sysconfdir}/vmware-tools/vm-support %{buildroot}%{_bindir} + +# Systemd unit files +install -p -m 644 -D %{SOURCE1} %{buildroot}%{_unitdir}/%{toolsdaemon}-init.service +install -p -m 644 -D %{SOURCE2} %{buildroot}%{_unitdir}/%{toolsdaemon}.service +install -p -m 644 -D %{SOURCE3} %{buildroot}%{_unitdir}/%{vgauthdaemon}.service + +# 'make check' in open-vm-tools rebuilds docs and ends up regenerating +# the font file. We can add %%check secion once 'make check' is fixed +# upstream + +%post +%{?ldconfig} +# Setup mount point for Shared Folders +# NOTE: Use systemd-detect-virt to detect VMware platform because +# vmware-checkvm might misbehave on non-VMware platforms. +if [ -f %{_bindir}/vmware-checkvm -a \ + -f %{_bindir}/vmhgfs-fuse ] && \ + %{_bindir}/systemd-detect-virt | grep -iq VMware && \ + %{_bindir}/vmware-checkvm &> /dev/null && \ + %{_bindir}/vmware-checkvm -p | grep -q Workstation && \ + %{_bindir}/vmhgfs-fuse -e &> /dev/null; then + mkdir -p /mnt/hgfs +fi + +%systemd_post %{toolsdaemon}-init.service +%systemd_post %{vgauthdaemon}.service +%systemd_post %{toolsdaemon}.service + +%preun +%systemd_preun %{toolsdaemon}-init.service +%systemd_preun %{toolsdaemon}.service +%systemd_preun %{vgauthdaemon}.service + +if [ "$1" = "0" -a \ + -f %{_bindir}/vmware-checkvm ] && \ + %{_bindir}/systemd-detect-virt | grep -iq VMware && \ + %{_bindir}/vmware-checkvm &> /dev/null; then + + # Tell VMware that open-vm-tools is being uninstalled + if [ -f %{_bindir}/vmware-rpctool ]; then + %{_bindir}/vmware-rpctool 'tools.set.version 0' &> /dev/null || /bin/true + fi + + # Teardown mount point for Shared Folders + if [ -d /mnt/hgfs ] && \ + %{_bindir}/vmware-checkvm -p | grep -q Workstation; then + umount /mnt/hgfs &> /dev/null || /bin/true + rmdir /mnt/hgfs &> /dev/null || /bin/true + fi + + # Cleanup GuestProxy certs + %{_bindir}/vmware-guestproxycerttool -e &> /dev/null || /bin/true +fi + +%postun +%{?ldconfig} +%systemd_postun_with_restart %{toolsdaemon}-init.service +%systemd_postun_with_restart %{toolsdaemon}.service +%systemd_postun_with_restart %{vgauthdaemon}.service + +%files +%license COPYING +%doc AUTHORS ChangeLog NEWS README +%config(noreplace) %{_sysconfdir}/pam.d/* +%dir %{_sysconfdir}/vmware-tools/ +%dir %{_sysconfdir}/vmware-tools/vgauth +%dir %{_sysconfdir}/vmware-tools/vgauth/schemas +%config(noreplace) %{_sysconfdir}/vmware-tools/*.conf +# Don't expect users to modify VGAuth schema files +%config %{_sysconfdir}/vmware-tools/vgauth/schemas/* +%{_sysconfdir}/vmware-tools/*-vm-default +%{_sysconfdir}/vmware-tools/scripts +%{_sysconfdir}/vmware-tools/statechange.subr +%{_bindir}/VGAuthService +%{_bindir}/vm-support +%{_bindir}/vmhgfs-fuse +%{_bindir}/vmtoolsd +%{_bindir}/vmware-checkvm +%{_bindir}/vmware-guestproxycerttool +%{_bindir}/vmware-hgfsclient +%{_bindir}/vmware-namespace-cmd +%{_bindir}/vmware-rpctool +%{_bindir}/vmware-toolbox-cmd +%{_bindir}/vmware-vgauth-cmd +%{_bindir}/vmware-xferlogs +%{_libdir}/libDeployPkg.so.* +%{_libdir}/libguestlib.so.* +%{_libdir}/libhgfs.so.* +%{_libdir}/libvgauth.so.* +%{_libdir}/libvmtools.so.* +%dir %{_libdir}/%{name}/ +%dir %{_libdir}/%{name}/plugins +%dir %{_libdir}/%{name}/plugins/common +%{_libdir}/%{name}/plugins/common/*.so +%dir %{_libdir}/%{name}/plugins/vmsvc +%{_libdir}/%{name}/plugins/vmsvc/*.so +%{_datadir}/%{name}/ +%{_udevrulesdir}/99-vmware-scsi-udev.rules +%{_unitdir}/%{toolsdaemon}-init.service +%{_unitdir}/%{toolsdaemon}.service +%{_unitdir}/%{vgauthdaemon}.service + +%files desktop +%{_sysconfdir}/xdg/autostart/*.desktop +%{_bindir}/vmware-user +%{_bindir}/vmware-user-suid-wrapper +%{_bindir}/vmware-vmblock-fuse +%{_libdir}/%{name}/plugins/vmusr/ + +%files devel +%doc docs/api/build/* +%exclude %{_includedir}/libDeployPkg/ +%{_includedir}/vmGuestLib/ +%{_libdir}/pkgconfig/*.pc +%{_libdir}/libDeployPkg.so +%{_libdir}/libguestlib.so +%{_libdir}/libhgfs.so +%{_libdir}/libvgauth.so +%{_libdir}/libvmtools.so + +%files test +%{_bindir}/vmware-vgauth-smoketest + +%changelog +* Tue Jan 08 2019 Miroslav Rezanina - 10.3.0-2.el8 +- ovt-Enable-cloud-init-by-default-to-change-the-systemd-u.patch [bz#1660713] +- Resolves: bz#1660713 + ([ESXi][RHEL8.0]Enable cloud-init by default to change the systemd unit file vmtoolsd.service) + +* Tue Oct 16 2018 Miroslav Rezanina - 10.3.0-1 +- Rebase to 10.3.0 [bz#1626578] +- Resolves: bz#1626578 + ([ESXi][RHEL8]Rebase open-vm-tools to 10.3.0) + +* Mon May 14 2018 Miroslav Rezanina - 10.2.5-2 +- Updated RHEL version + +* Wed May 09 2018 Ravindra Kumar - 10.2.5-2 +- Use tirpc for Fedora 28 onwards. + +* Wed May 09 2018 Ravindra Kumar - 10.2.5-1 +- Package new upstream version open-vm-tools-10.2.5-8068406 (RHBZ#1431376). +- Added use-tirpc.patch to use libtirpc instead of deprecated Sun RPC. +- Removed wayland-crash.patch which is no longer needed. + +* Mon Apr 30 2018 Pete Walter - 10.2.0-5 +- Rebuild for ICU 61.1 + +* Thu Feb 08 2018 Fedora Release Engineering - 10.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Fri Dec 29 2017 Ravindra Kumar - 10.2.0-3 +- Patch for a Wayland related crash in the desktopEvents plugin (RHBZ#1526952). +- gdk_set_allowed_backends() is available in version 3.10 and later only. + +* Mon Dec 18 2017 Ravindra Kumar - 10.2.0-2 +- Build with gtk3 only on newer distros. + +* Fri Dec 15 2017 Ravindra Kumar - 10.2.0-1 +- Package new upstream version open-vm-tools-10.2.0-7253323. +- Remove the patches that are no longer needed. +- New version builds with gtk3 by default. +- Package vmware-user symlink in desktop. +- Add a new test package for test utilities. +- Pick a fix to a conditional from Miroslav Vadkerti . + +* Thu Nov 30 2017 Pete Walter - 10.1.10-4 +- Rebuild for ICU 60.1 + +* Thu Sep 28 2017 Ravindra Kumar - 10.1.10-3 +- Replaced 'net-tools' dependency with 'iproute' (RHBZ#1496134). +- Added resolutionKMS-wayland-2.patch with some new fixes. + +* Fri Aug 11 2017 Kalev Lember - 10.1.10-2 +- Bump and rebuild for an rpm signing issue + +* Thu Aug 10 2017 Ravindra Kumar - 10.1.10-1 +- Package new upstream version open-vm-tools-10.1.10-6082533. +- Remove the patches that are no longer needed. + +* Thu Aug 03 2017 Fedora Release Engineering - 10.1.5-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 10.1.5-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue Jul 25 2017 Richard W.M. Jones - 10.1.5-5 +- Fix /tmp race conditions in libDeployPkg (CVE-2015-5191). + +* Sun Apr 02 2017 Ravindra Kumar - 10.1.5-4 +- ResolutionKMS patch for Wayland (RHBZ#1292234). + +* Thu Mar 16 2017 Ravindra Kumar - 10.1.5-3 +- Need to add xmlsec1-openssl dependency explicitly. + +* Tue Feb 28 2017 Richard W.M. Jones - 10.1.5-2 +- Use 0644 permissions for udev rules file. + +* Fri Feb 24 2017 Ravindra Kumar - 10.1.5-1 +- Package new upstream version open-vm-tools-10.1.5-5055683 (RHBZ#1408959). + +* Fri Feb 17 2017 Ravindra Kumar - 10.1.0-1 +- Package new upstream version open-vm-tools-10.1.0-4449150 (RHBZ#1408959). +- Remove patches that are no longer needed. +- Build with --enable-xmlsec1 to avoid dependency on xerces-c and xml-security-c. +- Replace _prefix/lib/udev/rules.d/ with _udevrulesdir macro. + +* Thu Feb 16 2017 Ravindra Kumar - 10.0.5-10 +- sysmacros patch for glibc-2.25 (RHBZ#1411807). +- vgauth patch for openssl-1.1.0. + +* Thu Feb 16 2017 Ravindra Kumar - 10.0.5-9 +- udev rules patch for longer SCSI timeouts (RHBZ#1214347). + +* Sat Feb 11 2017 Fedora Release Engineering - 10.0.5-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Oct 26 2016 Richard W.M. Jones - 10.0.5-5 +- vm-support script needs lspci from pciutils (RHBZ#1388766). + +* Wed Sep 14 2016 Ravindra Kumar - 10.0.5-4 +- Patch for HGFS stale caching issues (RHBZ#1342181). + +* Mon Jun 20 2016 Ravindra Kumar - 10.0.5-3 +- Use systemd-detect-virt to detect VMware platform (RHBZ#1251656). + +* Wed May 25 2016 Ravindra Kumar - 10.0.5-2 +- Obsolete open-vm-tools-deploypkg because its not needed for v10.x. + +* Wed May 25 2016 Ravindra Kumar - 10.0.5-1 +- Package new upstream version open-vm-tools-10.0.5-3227872. +- Add a patch for fixing GCC 6 build issue (RHBZ#1305108). +- Replace kill-werror.patch with no-unused-const.patch. + +* Wed May 25 2016 Richard W.M. Jones - 10.0.0-12 +- Bump and rebuild. + +* Sat Apr 23 2016 Richard W.M. Jones - 10.0.0-11 +- Kill -Werror with fire (RHBZ#1305108). + +* Fri Apr 15 2016 David Tardon - 10.0.0-10 +- rebuild for ICU 57.1 + +* Thu Feb 04 2016 Fedora Release Engineering - 10.0.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Oct 28 2015 David Tardon - 10.0.0-8 +- rebuild for ICU 56.1 + +* Thu Oct 01 2015 Ravindra Kumar - 10.0.0-7 +- Added a missing output redirection + +* Thu Oct 01 2015 Ravindra Kumar - 10.0.0-6 +- Setup Shared Folders mount point when 'vmhgf-fuse -e' is success + +* Thu Oct 01 2015 Ravindra Kumar - 10.0.0-5 +- Setup and teardown Shared Folders mount point on VMs running + on VMware Workstation or VMware Fusion. + +* Wed Sep 30 2015 Ravindra Kumar - 10.0.0-4 +- vmhgfs-fuse needs 'fusermount' from 'fuse' + +* Wed Sep 30 2015 Ravindra Kumar - 10.0.0-3 +- Replace -std=c++11 with -std=gnu++11 to get "linux" definitions work + in order to fix the build issue, + https://kojipkgs.fedoraproject.org//work/tasks/4823/11274823/build.log +- Removed unused definitions for CFLAGS and CXXFLAGS + +* Wed Sep 30 2015 Ravindra Kumar - 10.0.0-2 +- Add -std=c++11 to CXXFLAGS for fixing the build issue, + https://kojipkgs.fedoraproject.org//work/tasks/3685/11273685/build.log + +* Tue Sep 29 2015 Ravindra Kumar - 10.0.0-1 +- Package new upstream version open-vm-tools-10.0.0-3000743 + +* Wed Aug 26 2015 Simone Caronni - 9.10.2-2 +- Add license macro. +- Remove initscripts requirement (#1226369). +- Delete mount.vmhgfs instead of excluding from packaging, so the debug + information is not included in the package (#1190540). +- Be more explicit with configuration files, newer mock complains of files being + listed twice. + +* Tue Jul 07 2015 Ravindra Kumar - 9.10.2-1 +- Package new upstream version open-vm-tools-9.10.2-2822639 +- Removed the patches that are no longer needed + +* Wed Jun 17 2015 Fedora Release Engineering - 9.10.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed May 20 2015 Ravindra Kumar - 9.10.0-4 +- Claim ownership for /etc/vmware-tools directory + +* Fri May 15 2015 Ravindra Kumar - 9.10.0-3 +- Put Fedora 23 specific fix under a conditional, so that the change + can be backported to other branches easily if required. + +* Fri May 08 2015 Ravindra Kumar - 9.10.0-2 +- F23 has split gdk-pixbuf2-devel >= 2.31.3-5 into 3 packages, gdk-pixbuf2-devel, + gdk-pixbuf2-modules-devel, and gdk-pixbuf2-xlib-devel. gtk2-devel does not depend + on gdk-pixbuf2-xlib-devel. Therefore, we need to pull in gdk-pixbuf2-xlib-devel + dependency ourselves. + +* Thu Apr 30 2015 Ravindra Kumar - 9.10.0-1 +- Package new upstream version open-vm-tools-9.10.0-2476743 +- New version requires adding a new service vgauthd +- Removed old patches that are no longer needed +- Fix (asm_x86.patch) for correct GCC version check +- Fix (strerror_r.patch) for picking GNU signature of strerror_r +- Fix (toolboxcmd.patch) for compiling toolboxcmd-shrink.c with gcc 5.0.1 + +* Wed Feb 04 2015 Ravindra Kumar - 9.4.6-6 +- Added a patch for missing NetIpRouteConfigInfo (BZ#1189295) + +* Mon Jan 26 2015 David Tardon - 9.4.6-5 +- rebuild for ICU 54.1 + +* Wed Sep 24 2014 Simone Caronni - 9.4.6-4 +- Rebuild for new procps-ng version. + +* Tue Aug 26 2014 David Tardon - 9.4.6-3 +- rebuild for ICU 53.1 + +* Sun Aug 17 2014 Fedora Release Engineering - 9.4.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Wed Jul 16 2014 Ravindra Kumar - 9.4.6-1 +- Package new upstream version open-vm-tools-9.4.6-1770165 +- Added "autoreconf -i" and its build dependencies (autoconf, automake and libtool) + to generate configure script, this is required for version 9.4.6 as it does not + have configure script bundled in the tar +- Fix (sizeof_argument.patch) for bad sizeof argument error + +* Sat Jun 07 2014 Fedora Release Engineering - 9.4.0-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed Apr 23 2014 Ravindra Kumar - 9.4.0-9 +- Removed unnecessary package dependency on 'dbus' +- Moved 'vm-support' script to /usr/bin +- Added a call to 'tools.set.version' RPC to inform VMware + platform when open-vm-tools has been uninstalled + +* Wed Mar 26 2014 Ravindra Kumar - 9.4.0-8 +- Add missing package dependency on 'which' (BZ#1045709) + +* Tue Mar 25 2014 Ravindra Kumar - 9.4.0-7 +- Add -D_DEFAULT_SOURCE to suppress warning as suggested in + https://sourceware.org/bugzilla/show_bug.cgi?id=16632 + +* Fri Mar 21 2014 Ravindra Kumar - 9.4.0-6 +- Add missing package dependencies (BZ#1045709, BZ#1077320) + +* Tue Feb 18 2014 Igor Gnatenko - 9.4.0-5 +- Fix FTBFS g_info redefine (RHBZ #1063847) + +* Fri Feb 14 2014 David Tardon - 9.4.0-4 +- rebuild for new ICU + +* Tue Feb 11 2014 Richard W.M. Jones - 9.4.0-3 +- Only build on x86-64 for RHEL 7 (RHBZ#1054608). + +* Wed Dec 04 2013 Richard W.M. Jones - 9.4.0-2 +- Rebuild for procps SONAME bump. + +* Wed Nov 06 2013 Ravindra Kumar - 9.4.0-1 +- Package new upstream version open-vm-tools-9.4.0-1280544. +- Added CUSTOM_PROCPS_NAME=procps and -Wno-deprecated-declarations + for version 9.4.0. + +* Thu Aug 22 2013 Ravindra Kumar - 9.2.3-11 +- Added copyright and license text. +- Corrected summary for all packages. + +* Thu Aug 08 2013 Ravindra Kumar - 9.2.3-10 +- Added options for hardening build (bug 990549). +- Excluded unwanted file mount.vmhgfs from packaging (bug 990547). +- Removed deprecated key "Encoding" from "Desktop Entry" (bug 990552). + +* Sat Aug 03 2013 Fedora Release Engineering - 9.2.3-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue Jun 4 2013 Richard W.M. Jones - 9.2.3-8 +- RHEL 7 now includes libdnet, so re-enable it. + +* Fri May 24 2013 Richard W.M. Jones - 9.2.3-6 +- +BR gcc-c++. If this is missing it fails to build. +- On RHEL, disable libdnet. + +* Mon May 06 2013 Ravindra Kumar - 9.2.3-5 +- Renamed source file open-vm-tools.service -> vmtoolsd.service + to match it with the service name. + +* Wed May 01 2013 Ravindra Kumar - 9.2.3-4 +- Bumped the release to pick the new service definition with + no restart directive. + +* Mon Apr 29 2013 Ravindra Kumar - 9.2.3-3 +- open-vm-tools-9.2.3 require glib-2.14.0. + +* Mon Apr 29 2013 Ravindra Kumar - 9.2.3-2 +- Bumped the release to pick the new service definition. + +* Thu Apr 25 2013 Ravindra Kumar - 9.2.3-1 +- Package new upstream version open-vm-tools-9.2.3-1031360. +- Removed configure options CUSTOM_PROCPS_NAME (for libproc) and + -Wno-deprecated-declarations as these have been addressed in + open-vm-tools-9.2.3-1031360. + +* Wed Apr 24 2013 Ravindra Kumar - 9.2.2-12 +- Removed %%defattr and BuildRoot. +- Added ExclusiveArch. +- Replaced /usr/sbin/ldconfig with /sbin/ldconfig. + +* Mon Apr 22 2013 Ravindra Kumar - 9.2.2-11 +- Removed the conditional steps for old versions of Fedora and RHEL. + +* Thu Apr 18 2013 Ravindra Kumar - 9.2.2-10 +- Addressed formal review comments from Simone Caronni. +- Removed %%check section because 'make check' brings font file back. + +* Wed Apr 17 2013 Simone Caronni - 9.2.2-9 +- Removed rm command in %%check section. +- Remove blank character at the beginning of each changelog line. + +* Mon Apr 15 2013 Ravindra Kumar - 9.2.2-8 +- Removed FreeSans.ttf font file from packaging. +- Added 'rm' command to remove font file in %%check section because + 'make check' adds it back. +- Added doxygen dependency back. + +* Thu Apr 11 2013 Ravindra Kumar - 9.2.2-7 +- Applied patch from Simone for removal of --docdir option from configure. +- Removed unnecessary --enable-docs option from configure. +- Removed doxygen dependency. + +* Thu Apr 11 2013 Ravindra Kumar - 9.2.2-6 +- Replaced vmtoolsd with a variable. +- Changed summary for subpackages to be more specific. +- Removed drivers.txt file as we don't really need it. +- Fixed vmGuestLib ownership for devel package. +- Removed systemd-sysv from Requires for Fedora 18+ and RHEL 7+. +- Made all "if" conditions consistent. + +* Wed Apr 10 2013 Simone Caronni - 9.2.2-5 +- Added RHEL 5/6 init script. +- Renamed SysV init script / systemd service file to vmtoolsd. +- Fixed ownership of files from review. +- Moved api documentation in devel subpackage. +- Removed static libraries. + +* Tue Apr 09 2013 Ravindra Kumar - 9.2.2-4 +- Applied part of review fixes patch from Simone Caronni for systemd setup. +- Replaced tabs with spaces all over. + +* Tue Apr 09 2013 Ravindra Kumar - 9.2.2-3 +- Applied review fixes patch from Simone Caronni. +- Added missing *.a and *.so files for devel package. +- Removed unnecessary *.la plugin files from base package. + +* Mon Apr 08 2013 Ravindra Kumar - 9.2.2-2 +- Modified SPEC to follow the conventions and guidelines. +- Addressed review comments from Mohamed El Morabity. +- Added systemd script. +- Verified and built the RPMS for Fedora 18. +- Fixed rpmlint warnings. +- Split the UX components in a separate package for desktops. +- Split the help files in a separate package for help. +- Split the guestlib headers in a separate devel package. + +* Mon Jan 28 2013 Sankar Tanguturi - 9.2.2-1 +- Initial SPEC file to build open-vm-tools for Fedora 17.