PSA: Problems packaging VMware Fusion 11.5.5

sdagley
Esteemed Contributor II

VMware Fusion 11.5.5 now has 21 files in the application bundle with attached xattrs which are not preserved if you use Composer to create a .pkg installer, or when running the AutoPkg recipe for packaging VMware Fusion 11. Attempting to run a VM without those xattrs present will fail with a broken pipe error.

To work around this for Composer you can compress the VMware Fusion.app bundle, the create an installer .pkg to drop the .zip file in a temporary location and use ditto to extract the app into /Applications which will preserve the xattrs. The fix for the AutoPkg recipe will require a change to one of the AutoPkg components.

7 REPLIES 7

franton
Valued Contributor III

I was dealing with something similar last week. It seems the solution is blogged here: https://carlashley.com/2018/11/03/preserving-xattr-with-pkgbuild/

If you want to use composer, rather than CLI tools then you'll have to do an FR request for this as an option with Composer. I'll happily upvote.

sdagley
Esteemed Contributor II

@franton Thanks for the reference, I added it to the conversation in #autopkg on Mac Admis Slack. I'll get that FR created sometime this evening

sdagley
Esteemed Contributor II

rtrouton
Release Candidate Programs Tester

You can also use munkipkg to package VMware Fusion 11.5.5 successfully. What I did to make this work was the following:

  1. Installed munkipkg
  2. Ran the following command to import the previous VMware Fusion installer package: munkipkg --import /path/to/VMwareFusion1153.pkg VMwareFusion1155
  3. Went into the VMwareFusion1155 project directory which munkipkg had set up and replaced the VMware Fusion.app found at VMwareFusion1155/payload/Applications with the VMware Fusion.app for VMware Fusion 11.5.5.
  4. Edited the build_info.plist found in the VMwareFusion1155 project directory to look like this:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>distribution_style</key>
    <false/>
    <key>identifier</key>
    <string>com.vmware.fusion</string>
    <key>install_location</key>
    <string>/</string>
    <key>name</key>
    <string>VMware_Fusion_11.5.5.pkg</string>
    <key>ownership</key>
    <string>recommended</string>
    <key>postinstall_action</key>
    <string>none</string>
    <key>preserve_xattr</key>
    <true/>
    <key>version</key>
    <string>11.5.5</string>
</dict>
</plist>

I then built the VMware Fusion 11.5.5 package with the following command:

munkipkg /path/to/VMwareFusion1155

munkipkg processed for a bit then delivered a package named VMware_Fusion_11.5.5.pkg, which installed a fully working copy of VMware Fusion 11.5.5.

donmontalvo
Esteemed Contributor III

Whitebox Packages fixed the issue in the past few versions, it also includes a command line tool.

http://s.sudre.free.fr/Software/Packages/about.html

--
https://donmontalvo.com

bmack99
Contributor III

@rtrouton Thanks for posting this. I have been struggling with trying to get the 11.5.5 Fusion update packaged and deployed. Munkipkg worked great, I did have one question though, after install upon first launch (at least in macOS 10.15) there is an admin prompt for Fusion to configure a few things. Do you know a way to suppress this prompt for admin? We have users in our environment who do not have admin privileges. Thanks!

sdagley
Esteemed Contributor II

FYI the AutoPkg recipe for creating a .pkg for VMware Fusion has been updated to work around this issue, and appears to be functional once again