Skip to main content
Jamf Nation, hosted by Jamf, is a knowledgeable community of Apple-focused admins and Jamf users. Join us in person at the ninth annual Jamf Nation User Conference (JNUC) this November for three days of learning, laughter and IT love.

Office 2016 Volume Installer findings

See my reply to my own post below...I was interested in seeing the difference between the volume license build and the Office 365 build of MS Office 2016. Was referred to Rich's post. Had read it it and was insightful, but wanted to understand Microsoft's logic in creating this weird installer. I think I get it now and posted my findings below. Basically, I figured out how the com.microsoft.office.licensingV2.plist file is generated during installation in the GUI.

Like Comment
Order by:
SOLVED Posted: by dgreening

I have been using Rich Trouton's directions for creating the Office 2016 installer in conjunction with the 365 package, with the addition of the com.microsoft.office.licensingV2.plist as part of the package, and it works like a charm.

https://derflounder.wordpress.com/2015/08/05/creating-an-office-2016-15-12-3-installer/

Like
SOLVED Posted: by blackholemac

Have seen Rich's post...not knocking it...in fact Rich has helped me with other issues. My desire was for understanding of the logic behind this crazy package. I think I have figured it out and can share.

So I have opened both packages in Pacifist. Attached is a comparison:

You can see the are they are the same set of packages save for one small package, Office15_all_volume.licensing.pkg

So we drop into Terminal and run the following commands:

mkdir ~/Desktop/expanded
pkgutil --expand /Volumes/Office\ 2016/Microsoft_Office_2016_Volume_Installer.pkg ~/Desktop/expanded/Microsoft_Office_2016_Volume_Installer.pkg

That unflattens the Volume Installer...from there, we can Show Package Contents (with a right click). Pull out the Office15_all_volume_licensing.pkg to the desktop and reflatten just it to make it usable.

mkdir ~/Desktop/flattened
pkgutil --flatten ~/Desktop/Office15_all_volume_licensing.pkg ~/Desktop/flattened/Office15_all_volume_licensing.pkg

Congratulations, at that point you have before you the only difference between the Office 365 package and the Volume Installer package in PKG form.

Now, digging in deeper on the Office15_all_volume_licensing.pkg is quite interesting as well. All that package does lay on a file to /tmp called Microsoft Office Setup Assistant.app and uses the following postinstall script to call it as a logged in user....no joy for us folks wanting to call it from a root shell...the file doesn't get generated:

#!/bin/sh

logger "Activating Volume License"
volumelicense_exe_path="$2/Microsoft Office Setup Assistant.app/Contents/MacOS/Microsoft Office Setup Assistant"
/usr/bin/sudo -u $USER "$volumelicense_exe_path"

/bin/rm -rf "$2/Microsoft Office Setup Assistant.app"

exit 0

As you can see, it even removes the Setup Assistant that it calls after licensing it. It is this process here that CREATES the com.microsoft.office.licensingV2.plist file referenced in Rich's post based on "stuff" detected from your imaging machine. I'm wondering if this file should be unique on all systems or something. I also wonder if knowledge of this process could help us find some way to clean up this buggy installer in an easy way.

Maybe this might help someone, it might now...this messing around for an hour helped me to understand the logic between the two packages...I can see the only difference is that and creating separate packages for Microsoft is simply the difference between including the Office15_all_volume_licensing.pkg or not.

blackholemac

Like
SOLVED Posted: by calumhunter

tim has a good write up of it here
http://macops.ca/whats-wrong-with-the-office-2016-volume-license-installer/

You can easily not install the volume licence package with the VLA installer by using an installerchoices.xml file - no need to unpack or repack
That will let you deploy the VLA silently via the CLI or Munki or Casper ect ect without the package hanging while it tries to licence the product

You will still have issues with the MAU being untrusted and having to allow the MAU daemon when you open a MS app for the first time

Or you can just download the 15.3.1 updaters from MS for each app.

The apps from the VLA are version 15.3.3 but there are no code changes to the apps. the difference is simply the packaging method - so instead of MS updating the version of the PACKAGE - they updated the version of the APPS - good one MS.

The licence file is generated based on random host info like MAC address serial number but essentially it will always generate a valid licence code - many have said its like taking a dice and rolling a number - if the roll comes up with a number between 1 and 6 then woo hoo you're licenced!

Like
SOLVED Posted: by blackholemac

One of the benefits to the unpack approach in my case is because the CTO is the only one in our org with access to the VLSC and while he is always willing to help, I hate having to bug him every single time I need an updated MS installer. With this, I can use the Office 365 installer, but add in the VL part....My main goal with this post was merely to understand the MS installer and compare the VL one with the Office 365 one.

Like
SOLVED Posted: by lkrasno

I've already viewed @talkingmoose excellent PSU presentation but still on unclear on cli customized install options, I know customization is not yet available through the GUI, and wondering if this affects command line ?

I'm able to generate -showChoicesXML, but when attempting to apply (removing OneNote and Outlook) getting : installer: choices file '/Users/administrator/Desktop/choices.xml' either could not be found or was malformed

Like
SOLVED Posted: by blackholemac

Given what I learned, we decided for our environment to do a choices.xml file and were successfully able to block the auto updater from installing and we decided to deploy com.microsoft.office.licensingV2.plist with a separate package so I don't have to mess around with a sucky setup assistant.

My choices.xml properly suppresses both. Please post yours and I will happily compare notes.

Blackholemac

Like
SOLVED Posted: by Aziz

Random question, was there an individual OneNote installer? I couldn't seem to find it on VLSC.

Like
SOLVED Posted: by talkingmoose

@Abdiaziz, individual OneNote installer is from the Mac App Store. So far, it's the only app you can get from the App Store and requires no volume licensing. However, if you install from the MAS then only the MAS can provide updates for it. You won't see updates for it in Microsoft's AutoUpdate tool.

Like
SOLVED Posted: by blackholemac

If you write your choices.xml file right. I bet you could do a OneNote only install from the Office Volume License Installer. Basically I would list everything but the OneNote package in the XML (which deselects everything else). I would tuck in the com.microsoft.office.licensingV2.plist in a separate package. That should probably do the trick.

Like
SOLVED Posted: by lkrasno

Many Thanks @blackholemac

We're actually wanting to exclude Outlook and OneNote.

I was under impression, based on how 2011 works, is that the components are selected by the integer values ? I was attempting :

/Microsoft_Office_2016_Installer.pkg#Microsoft_OneNote_Internal.pkg</string>
                </array>
            </dict>
            <dict>
                <key>childItems</key>
                <array/>
                <key>choiceDescription</key>
                <string>Microsoft Outlook for Mac</string>
                <key>choiceIdentifier</key>
                <string>com.microsoft.outlook</string>
                <key>choiceIsEnabled</key>
                <true/>
                <key>choiceIsSelected</key>
                <integer>0</integer>
                <key>choiceIsVisible</key>
                <false/>
                <key>choiceSizeInKilobytes</key>
                <integer>156815</integer>
                <key>choiceTitle</key>
                <string>Microsoft Outlook for Mac</string>
                <key>pathsOfActivePackagesInChoice</key>
                <array>
                    <string>file://localhost/Users/administrator/Desktop/Microsoft_Office_2016_Installer.pkg#Microsoft_Outlook_Internal.pkg</string>
                </array>
            </dict>
            <dict>
                <key>childItems</key>
                <array/>
                <key>choiceDescription</key>
                <string>Microsoft AutoUpdate</string>
                <key>choiceIdentifier</key>
                <string>com.microsoft.autoupdate</string>
                <key>choiceIsEnabled</key>
                <true/>
                <key>choiceIsSelected</key>
                <integer>1</integer>
                <key>choiceIsVisible</key>
                <false/>
                <key>choiceSizeInKilobytes</key>
                <integer>5491</integer>
                <key>choiceTitle</key>
                <string>Microsoft AutoUpdate</string>
                <key>pathsOfActivePackagesInChoice</key>
                <array>
                    <string>file://localhost/Users/administrator/Desktop
/Microsoft_Office_2016_Installer.pkg#Microsoft_OneNote_Internal.pkg</string>
                </array>
            </dict>
            <dict>
                <key>childItems</key>
                <array/>
                <key>choiceDescription</key>
                <string>Microsoft Outlook for Mac</string>
                <key>choiceIdentifier</key>
                <string>com.microsoft.outlook</string>
                <key>choiceIsEnabled</key>
                <true/>
                <key>choiceIsSelected</key>
                <integer>0</integer>
                <key>choiceIsVisible</key>
                <false/>
                <key>choiceSizeInKilobytes</key>
                <integer>156815</integer>
                <key>choiceTitle</key>
                <string>Microsoft Outlook for Mac</string>
                <key>pathsOfActivePackagesInChoice</key>
                <array>
                    <string>file://localhost/Users/administrator/Desktop/Microsoft_Office_2016_Installer.pkg#Microsoft_Outlook_Internal.pkg</string>
                </array>
            </dict>
            <dict>
                <key>childItems</key>
                <array/>
                <key>choiceDescription</key>
                <string>Microsoft AutoUpdate</string>
                <key>choiceIdentifier</key>
                <string>com.microsoft.autoupdate</string>
                <key>choiceIsEnabled</key>
                <true/>
                <key>choiceIsSelected</key>
                <integer>1</integer>
                <key>choiceIsVisible</key>
                <false/>
                <key>choiceSizeInKilobytes</key>
                <integer>5491</integer>
                <key>choiceTitle</key>
                <string>Microsoft AutoUpdate</string>
                <key>pathsOfActivePackagesInChoice</key>
                <array>
                    <string>file://localhost/Users/administrator/Desktop
Like
SOLVED Posted: by AVmcclint

Why couldn't I just use Casper Composer to create a separate DMG of the com.microsoft.office.licensingV2.plist file from my admin Mac and bundle that in a single policy with the non-VLA installer? I've done testing and it seems to work very well that way.

Like
SOLVED Posted: by blackholemac

You could, and that is what I have tested here. It does in fact work that way. Just make sure you have decided how you want to handle the Microsoft AutoUpdater. It doesn't see the product until first launch. In other words, if you want the AutoUpdater to update Word, you have to launch Word first, etc.

What I have decided for us is a modified version of what you describe:

Use the Office 365 version or the Volume License version...whichever is available to me at the time of packaging.

I am going to use Choices.xml to deselect the updater and if I am using the volume license media, I will deselect the volume license package. We install that. I then tuck in a separate .dmg which lays on com.microsoft.office.licensingV2.plist.

There are a lot of ways to handle this...the bottom line is that it is sad that we have to...you just need to choose what is right for you.

Like
SOLVED Posted: by AVmcclint

I am tackling this one step at a time. My first step was to get our license file on machines easily and for the installer to work as a simple pkg policy. I don't know how to do a choices.xml file. Next steps will be to figure out what Microsoft's plans are for updates and if there is an easy way to update everything without using Autoupdater. So far, It seems to be a LOT easier to download the full non-VLA installer at ~1.2GB than 4 or 5 separate updaters at 4GB+ total. The hard part is FINDING that full installer. I happened to find the 15.14 full installer via someone posting it in jamfnation, but it seemed to be a randomly generated URL so finding the next version could be problematic.

Like
SOLVED Posted: by bpavlov

If you don't know how to do something, try and learn it. There's a good post explaining how to use choices.xml: https://jamfnation.jamfsoftware.com/discussion.html?id=13946#responseChild84049

In this game, knowledge is power. And it gives you more options in tackling a problem. It is absolutely unnecessary to use Composer to deploy Office 2016. A few minor modifications by simply expanding the Office installers using pkgutil to expand and then re-flatten should do the trick.

Here is my choices.xml:

<?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">
<array>
    <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>com.microsoft.autoupdate</string>
    </dict>
    <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>com.microsoft.outlook</string>
    </dict>
</array>
</plist>

It makes sure that MS Auto Update and Outlook are not installed with the Office installer as is.

Like
SOLVED Posted: by blackholemac

@AVmcclint I want to post a response here that will help you with your situation.

To help you understand @bpavlov 's response, it is important to understand that there is no one Right Way® to deal with getting software installed onto a Mac. There are MANY different tools in an admin's toolbox. Choose the one that fits you and that you have tried and tested and the software works in the end as you intend.

In general, if you take the choices.xml approach, you are going to get the software onto a Mac more like the developer intended. Scripts run, software gets permissioned the way the developer intended, etc.

I view a choices.xml file much like a Windows admin would see an .mst file. The package would still get on there the way the developer intended, but let you, the sysadmin, transform the parts you want tweaked. While I know how to do a choices.xml file, I can guarantee you that using such transforms is not always 100% the only way to do it.

For instance, I can reference a bad installer that @donmontalvo had to deal with regarding Roxio Toast. I've had some similar bad ones come from Corel and even Adobe. Sometimes developers just right out and out poor installers that barely think of a user running from GUI, let alone think of sysadmins like us.

https://jamfnation.jamfsoftware.com/discussion.html?id=11822

To get such installers to play well in an enterprise environment, all options are on the table...repackaging, additional helper installers written by you the sysadmin, transforms, b**ing to tech vendors, etc. Also each environment is different. I will return now to the Office 2016 installer. The environment I contend with in our organization is as follows:

  1. All standalone .pkg files are installed and updated as needed by IT and only IT (the traditional model)
  2. We want all software to be on the machine in launch-ready form that needs zero or near-zero tweaking by the end user. They should just be able to double click software and have at it.
  3. Our users do not have admin rights to their workstations.
  4. We don't wish Office 365 users to have an install on corporate equipment count against their quota of 5 installs that comes with an Office 365 account.

Given these parameters and given that I wish to have software installed as close as possible to how Microsoft intended it to work, I have decided that a choices.xml file is the best course of action FOR US followed by a "helper package" that puts the com.microsoft.office.licensingV2.plist file where it needs to be.

@calumhunter 's post on this thread helped me see that I just need to get com.microsoft.office.licensingV2.plist present where it needs to be to properly volume license Office 2016. When I first posted my musings, I was worried that this file would need to be unique to each Mac that this gets deployed to. Luckily he and others confirmed that I don't need to worry.

I said in one of my earlier posts that I would help with a choices.xml file. I could show you mine, but I am going to put myself in your shoes here for this exercise below. I mocked one up for you using what you have said, that you wish to remove Outlook and OneNote, that you didn't want users to see the AutoUpdater and that you would lay on com.microsoft.office.licensingV2.plist using another method.

<array>
    <string>com.microsoft.autoupdate</string>
    <string>com.microsoft.licensing.volume</string>
    <string>com.microsoft.onenote.mac</string>
    <string>com.microsoft.outlook</string>
</array>

A choices.xml file is basically a listing of clicks in a GUI installer. Basically listing something in choices.xml is the same as removing or adding a checkbox in a GUI installer (though MS has written their GUI installer so you don't see any choices available in the GUI). One can see what all of the possible choices for this package are by running the following command on the package and reading the output.

sudo installer -pkg /path/to/Microsoft_Office_2016_Installer.pkg -showChoicesXML -target /

I made note that I wanted to remove OneNote, Outlook, the volume installer (if it's present) and MS AutoUpdate. I then wrote the choices.xml file above from that info.

I can then install Office 2016 using the following command and the choices.xml file that was created:

sudo installer -pkg /path/to/Microsoft_Office_2016_Installer.pkg -target / -applyChoiceChangesXML /path/to/choices.xml

That will get Office 2016 installed on the Mac using the parameters that were laid out...key phrase there is "the parameters that were laid out".

Outlook and OneNote didn't get installed because we didn't want them. Neither did the AutoUpdater or the Volume Licensing file. You have to plan how you will handle those. I wouldn't worry too much about the AutoUpdater as you can grab it later as a standalone installer from MS if you later need it for whatever reason. I wouldn't worry about the licensing file as you can deploy a file out to your machines in a location fairly easily. You WILL have to manage your own updates though.

Very long post...sorry for that, but wanted to maybe add some heart to some other posts in this thread. I agree with @bpavlov that you have to learn new techniques, but I also mix that in with the fact that there is not always one way to do things. I've been there and have been forced to learn a lot over my 15 years of Mac Admin experience. Maybe my musings here can help you.

Take care,
blackholemac

Like
SOLVED Posted: by bpavlov

@blackholemac Good post. My intention wasn't to come off as if there were only one technique so I apologize if that's the impression others may have gotten. However, without a doubt in my mind snapshot re-packaging should be a last resort. Evaluate the installer and pick the best method going forward that involves little modification of the original installer. I guarantee that 9 out of 10 times, you can avoid re-packaging. Even with Adobe you can actually use their installers (even if they are not following best packaging practices).

Like
SOLVED Posted: by blackholemac

would agree...Adobe I can use AAMEE or Creative Cloud Packager now...I am recalling the dark days man where it was even worse. I am also recalling buggy Acrobat installers. In my environment right now, the absolute worst one is Corel Painter 2016!! I had to repackage on it...I couldn't clean up that mess so well. Hearing Don post about Toast didn't surprise me at all. It is truly a package by package endeavor, but my general gameplan here is to stick to manufacturer packages where I can.

Like
SOLVED Posted: by AVmcclint

I agree that the uniqueness of the com.microsoft.office.licensingV2.plist was definitely of concern, but I'm glad it's a non-issue and I will definitely stick with putting it in a separate dmg to minimize the fuss.

I've been a Mac admin for a very long time as well (going back to AtEase for Workgroups and ASIP) and have learned a LOT over the years. Recent economic impact affected my access to new technologies for a few years so I do feel a bit behind the curve and I feel like I'm playing catch up. I have used the command line when necessary and have edited my fair share of .plist and .conf files. I'm not afraid of learning, but I do resent that many software vendors like Microsoft and Adobe (and even Apple) seem to go out of their way to make installation of their products more and more difficult when there is really no need to complicate things. Ultimately companies make those decisions based on security concerns and perceived financial loss to piracy. I can see El Capitan being a major pain for admins such as ourselves and for small independent developers because of the new SIP model. Office 2016's changes since Office 2011 are mostly in the spirit of security with sandboxing, but when they make major changes to the way apps are deployed, they bear some responsibility to help us get their products in front of users. I'm not a programmer. I've taken programming classes and I fail miserably at it. Doing the steps required just to make the installer do what "last year's version" did without fail borders on writing code. Personally I need to separate my frustration of these factors from "doing my job".

Like
SOLVED Posted: by mpermann

@blackholemac, a long but very well written post above. I agree with your statement regarding trying to use a vendor package when possible. When I took my CCT training back in July, I was surprised when the instructors suggested package files should be rebuilt using Composer most of the time with the exception being printer drivers. Printer driver package files were always supposed to be used with no modifications. That advice seemed to contradict most suggestions I've read on JAMF Nation. But of course there are lots of ways to do things and you ultimately need to find the way that works best for you.

Like
SOLVED Posted: by blackholemac

ASIP man!! Fond memories!!! Makes me want to restart the ASIP agent again or figure out how I'm keeping Web and File running today.

I feel you on bad installers, but I'll be honest...not too worried about SIP here. I have begun auditing most of my packages and I'm not seeing too many gotchas. I have a habit of "dog-fooding" all of my work here. That is probably the most helpful thing you can do. I rebuilt my day to day station as an ElCapitan station and only had to tweak 2-3 things. I have a graphics background personally so most of my installers cover 2-3 of our major Mac install base. Our web filtering agent simply required putting it somewhere else that wasn't SIP protected and in some cases, I had to download newer builds of drivers, but other than that, we are making progress to having full El Capitan support with SIP. Key is to know what you are up against. I have since learned that SIP DOES in fact let you keep adding removing stuff from the user template. That would have been ugly if not.

Microsoft's installers are far from perfect but they aren't as horrible as some I've seen...I would give them a 70% grade personally. A C in the K-12 realm at best.

As for programming...I have zero experience myself...just a bad script kiddie here...all of my scripts are simply done in bash which is similar to writing a batch file on Windows. I've had to learn all about the transition from MCX to Profiles...quite a bit...best way to learn is to do it, do it, do it and it sounds like you are doing that.

Good luck and hope my post helped you some,
blackholemac

Like
SOLVED Posted: by lkrasno

Excellent, many thanks @bpavlov I was using the entire plist as returned from -showChoicesXML and editing just the integers, wasn't aware we could trim this down as in your example.

Like
SOLVED Posted: by blackholemac

You, the sysadmin, have to decide what best works for you in the end. The folks at JAMF just have an obligation to teach you how each tool in the box workss...they can only help you so much to determine what is right for your environment. For instance, I used a technique from Greg Neagle for a long time to deal with Recovery HD. JAMF had other recommendations that I chose not to use. Now, I use AutoDMG for that. Again, different tools come together to build a toolkit.

Some installers are so ridiculously simple or written so well that I will absolutely repackage without any worry. I convert those to a .dmg just for speed...for instance if the installer doesn't have any preinstall/postinstall scripts or if the scripts are something I can understand and handle using better methods.

I have some packages the I wrote that install disparate collections of drag n'drop plugins...I DMGd those. There are some things that I compiled...again a DMG. I have one installer that is written with InstallerVISE. No choice but to repackage. Sometimes I will use the vendor installer but install a helper package of my own that corrects or augments the vendor package.

Other times like with Finale 2014, I had to repackage to deal with the Garritan orchestral instruments. I remember I got annoyed at the Apple Jam Packs, spent a day or two studying their installers and how they work/update/function and then fixed them to my liking. I don't have to do that now, but with the older DVD based ones I had to. One package we have is quite annoying in terms of licensing terms. The vendor won't give us the new installer unless we pay again, but out of principal, I refuse to. I will take a known working DMG of the old software (in this case originally installed by InstallerVISE) and use upgrade .pkg files to keep jacking with it as each new version comes out. I am annoyed with them on principal, but can ban the software as our users must have it in science. The trick when you must repackage or choose to is in understanding how to deal with original package receipts, updaters and launching in some rare cases. If you choose to repackage it, do it as intelligently as you can by studying the original installer, application and updaters and have a plan to handle supporting it.

With Final Cut Studio (pre Final Cut X) though, always use the Apple installer...tweak it if you need to but simply don't try to repackage that one ever! Plenty of other examples both ways. Use human intelligence and your whole toolbox to decide what works with your fleet and what gets the software on there in usable form for your users.

Keep learning new deployment technologies though whoever you are because having all of them together is what gets you through a C-grade installer like Office 2016.

Like
SOLVED Posted: by donmontalvo

@blackholemac wrote:

For instance, I can reference a bad installer that @donmontalvo had to deal with regarding Roxio Toast. I've had some similar bad ones come from Corel and even Adobe. Sometimes developers just right out and out poor installers that barely think of a user running from GUI, let alone think of sysadmins like us.

One of many bad packages from vendors, but as always I was happy to do remote sessions with their developers to show them why their installers/software needs to be reworked. Most of the time vendors either don't have the resources (too cheap to hire right; or they just don't know there's a problem/fix out there). But sometimes its just someone on their team flying under the radar, falling behind the curve, getting by, not wanting to be "outed". AAMEE (etc) are good examples of what a solid dose of public lambasting can bring. :)

Like
SOLVED Posted: by lkrasno

Almost there !

with @bpavlov example I'm able to exclude Outlook, but no luck with OneNote

I've tried

<?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">
<array>
    <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>com.microsoft.onenote.mac</string>
    </dict>
    <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>com.microsoft.outlook</string>
    </dict>
</array>
</plist>

and also just

<?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">
<array>
    <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>com.microsoft.onenote</string>
    </dict>
    <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>com.microsoft.outlook</string>
    </dict>
</array>
</plist>

However, OneNote still installs ?

Like
SOLVED Posted: by blackholemac

I tested the one I posted above...the 6 line choices.xml.

Now that was deploying by hand using command line.

To get Casper to deploy the package with the choices.xml file requires a few more tricks.

Like
SOLVED Posted: by lkrasno

I'm also just testing command line at this point.

Like
SOLVED Posted: by lkrasno

@blackholemac I'm also trying just :

<?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">
<array>
    <string>com.microsoft.onenote.mac</string>
    <string>com.microsoft.outlook</string>
</array>
   </plist>

But still getting OneNote installing :(

Like
SOLVED Posted: by blackholemac

very strange behavior...I did test it and it worked here.

I only used the following 6 lines though for what it's worth...my text file contained ONLY these lines. Of course I wanted to remove the updater and the volume license file when I did my example.

I also took a moment again to throw open the installer in Pacifist...basically OneNote only shows up in a single package labeled: Microsoft_OneNote_Internal.pkg.

When I did installer -pkg /path/to/officepackage.pkg -target / -showChoicesXML, com.microsoft.onenote.mac was the label for that package.

I will gladly retest, but mine succeeded the other day when did the following 6 lines only in my file...no header, no anything else.

<array>
    <string>com.microsoft.autoupdate</string>
    <string>com.microsoft.licensing.volume</string>
    <string>com.microsoft.onenote.mac</string>
    <string>com.microsoft.outlook</string>
</array>
Like
SOLVED Posted: by lkrasno

Thanks @blackholemac

I'm using the latest installer downloaded from the https://portal.office.com/ FYI

Will try your exact example, on a newly imaged MAC and report back.

Like
SOLVED Posted: by lkrasno

@blackholemac

I wasn't able to use your exact example, got the malformed error, finally got it working when I removed the <string>com.microsoft.licensing.volume</string>

<array>
    <string>com.microsoft.autoupdate</string>
    <string>com.microsoft.onenote.mac</string>
    <string>com.microsoft.outlook</string>
</array>

OR  

<array>
    <string>com.microsoft.onenote.mac</string>
    <string>com.microsoft.outlook</string>
</array>

Still installs OneNote :(

Like
SOLVED Posted: by lkrasno

Here's the OneNote plist as it appears in our package

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">
    <dict>
        <key>ATSApplicationFontsPath</key>
        <string>Fonts/</string>
        <key>BuildMachineOSBuild</key>
        <string>14E46</string>
        <key>CFBundleDevelopmentRegion</key>
        <string>en</string>
        <key>CFBundleDisplayName</key>
        <string>Microsoft OneNote</string>
        <key>CFBundleDocumentTypes</key>
        <array/>
        <key>CFBundleExecutable</key>
        <string>Microsoft OneNote</string>
        <key>CFBundleGetInfoString</key>
        <string>15.14 (150911), © 2015 Microsoft Corporation. All rights reserved.</string>
        <key>CFBundleHelpBookFolder</key>
        <string>OneNote.help</string>
        <key>CFBundleHelpBookName</key>
        <string>com.microsoft.onenote.mac.help</string>
        <key>CFBundleIconFile</key>
        <string>OneNote</string>
        <key>CFBundleIdentifier</key>
        <string>com.microsoft.onenote.mac</string>
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleName</key>
        <string>OneNote</string>
        <key>CFBundlePackageType</key>
        <string>APPL</string>
        <key>CFBundleShortVersionString</key>
        <string>15.14</string>
        <key>CFBundleSignature</key>
        <string>ONMC</string>
        <key>CFBundleSupportedPlatforms</key>
        <array>
            <string>MacOSX</string>
        </array>
        <key>CFBundleURLTypes</key>
        <array>
            <dict>
                <key>CFBundleURLName</key>
                <string>com.microsoft.onenote.mac</string>
                <key>CFBundleURLSchemes</key>
                <array>
                    <string>onenote</string>
                    <string>onenote-cmd</string>
                </array>
            </dict>
        </array>
        <key>CFBundleVersion</key>
        <string>15.14</string>
        <key>DTCompiler</key>
        <string>com.apple.compilers.llvm.clang.1_0</string>
        <key>DTPlatformBuild</key>
        <string>7A218</string>
        <key>DTPlatformVersion</key>
        <string>GM</string>
        <key>DTSDKBuild</key>
        <string>15A278</string>
        <key>DTSDKName</key>
        <string>macosx10.11</string>
        <key>DTXcode</key>
        <string>0700</string>
        <key>DTXcodeBuild</key>
        <string>7A218</string>
        <key>LSApplicationCategoryType</key>
        <string>public.app-category.productivity</string>
        <key>LSHasLocalizedDisplayName</key>
        <true/>
        <key>LSMinimumSystemVersion</key>
        <string>10.10</string>
        <key>LSRequiresNativeExecution</key>
        <true/>
        <key>MicrosoftBuildNumber</key>
        <string>150911</string>
        <key>MicrosoftExtendedBuildNumber</key>
        <string>15.14/150911</string>
        <key>MicrosoftSetupFeatures</key>
        <integer>1</integer>
        <key>MSOfeedbackAppID</key>
        <string>229</string>
        <key>NSAppTransportSecurity</key>
        <dict>
            <key>NSAllowsArbitraryLoads</key>
            <true/>
        </dict>
        <key>NSHumanReadableCopyright</key>
        <string>© 2015 Microsoft Corporation. All rights reserved.</string>
        <key>NSMainNibFile</key>
        <string>OneNoteApp_mac</string>
        <key>NSPrincipalClass</key>
        <string>MSOApplication</string>
        <key>NSSupportsAutomaticGraphicsSwitching</key>
        <true/>
        <key>UTExportedTypeDeclarations</key>
        <array/>
    </dict>
</plist>
Like
SOLVED Posted: by lkrasno

Anybody ? paging @talkingmoose for input

Like
SOLVED Posted: by bentoms

FWIW, I've heard from some people over in the MacAdmins Slack that the next revision of the VL installer should resolve the installer issues for the VL edition.

Like
SOLVED Posted: by powellbc

I am not sure if this is "the one," but I can verify the VL installer I got yesterday is a different version than the one released initially (it was sightly larger in size)

Like
SOLVED Posted: by arschebl

So, does OneNote still require a login to Office365 in that installer? We're cool over here with using it with our on-prem SharePoint, but forcing a login to Office365 is a deal breaker.

Like
SOLVED Posted: by calumhunter

you can disable the first tun dialog boxes for one note which allows you to use locally without needing to sign in to office 365

http://macops.ca/disabling-first-run-dialogs-in-office-2016-for-mac/

Like
SOLVED Posted: by chmeisch

Should I assume that we do not yet have access to the VL installer? The only full 2016 Mac Office package I see in our VLSC is the attached. It requires an office 365 login. I reached out to our microsoft rep, but haven't heard back yet.

Like
SOLVED Posted: by shoegazer

@chmeisch that is the VL installer, i have the same downloads in my VLSC

Like
SOLVED Posted: by Mhomar

How to implement Choices.xml in to my JSS Policy?

This has been a very enlightening thread and I have been able to install the Full Office 2016 Volume License with "my" Choices.xml file locally via CLI and it works perfectly. What I do not know and am looking forward to learning, is how to implement the Choices.xml file into my current JSS policy. The policy is configured with the "MS Office 2016 v15.14 Volume License.pkg" installer set to priority 10 and the " MS Office 2016 v15.14 License File.pkg" (packaged with composer) set to priority 11. They run in the correct order and I get a fully installed, licensed Office suite. However, I do want to suppress One note, AutoUpdate and the License volume with my Choices file. Can anyone expand on this and help me learn the proper way to do this? Many Thanks in advance for your help!

Like
SOLVED Posted: by blackholemac

That was the fun part...I got mine working, but I had to get uh..."creative"...lets go with that.

What I did was build a new .pkg containing Microsoft_Office_2016_Volume_Installer.pkg, the choices.xml and the com.microsoft.office.licensingV2.plist. I had the PKG file I created drop those three files to /private/var/tmp. As part of my pkg, I wrote a postinstall script contained below:

#!/bin/sh

# This command installs the actual Microsoft Office Installer package with my choices.xml file applied from /private/var/tmp.
installer -pkg /private/var/tmp/Microsoft_Office_2016_Volume_Installer.pkg -target / -applyChoiceChangesXML /private/var/tmp/choices.xml

# This command removes the Microsoft-supplied installer from /private/var/tmp
rm -R -f /private/var/tmp/Microsoft_Office_2016_Volume_Installer.pkg

# This command removes the choices.xml file from /private/var/tmp
rm -R -f /private/var/tmp/choices.xml

# This command moves (not copies) the licensing file from /private/var/tmp to it's correct location
mv -f /private/var/tmp/com.microsoft.office.licensingV2.plist /Library/Preferences/com.microsoft.office.licensingV2.plist

#This command properly sets ownership on that file
chown root:wheel /Library/Preferences/com.microsoft.office.licensingV2.plist

exit 0

It's kinda kludgy but it works and has been used here on whole labs already.

Like
SOLVED Posted: by agerson

When you first open an office 2016 app and click save the default save location is "Online Locations" and there is a button for "On my Mac" which then stays as the default once its chosen. Has anyone found out where this setting is saved or how to make it the default for users when they first open the applications. From my testing with Composer snapshots and other experiments it is not saved in any user level location and they changing of the setting does not appear to update or add any file on the file system.

EDIT: Answer https://jamfnation.jamfsoftware.com/discussion.html?id=17045

Like
SOLVED Posted: by itupshot

I'm not sure what we're trying to fix here. I think I missed the beginning of this conversation which apparently is in another thread.

I just downloaded the Volume Installer from my company's VLSC, and ran it on a test imaging configuration. After reboot, I logged into a local test account I created during imaging. I launched Word, and I got the following window. Is this what we're trying to get rid of?

Like
SOLVED Posted: by Aziz

@itupshot

You'll have to manually install Office 2016, then capture the licence file (Composer or Packages). Once you have it, you'll have to deploy it separately. It's an issue with the VL installer.

Licence file located at:

/Library/Preferences/com.microsoft.office.licensingV2.plist

Like
SOLVED Posted: by itupshot

@Abdiaziz That doesn't really answer my question. Is keeping that window from popping up what this thread is about?

Like
SOLVED Posted: by donmontalvo

Out client has Office 2016 Volume License (not 365) and we have been following @timsutton and @rtrouton guidelines quite successfully, in our case deploying this file separately, along with suppression:

/Library/Preferences/com.microsoft.office.licensingV2.plist
Like
SOLVED Posted: by Aziz

@itupshot

Kinda, there's multiple things being talked about in this post.This post is mostly about the issues with the 2016 installer.

To get rid of the window you're seeing, you'll have to do what my last post talked about.

Like
SOLVED Posted: by itupshot

@donmontalvo , @Abdiaziz

OK, from what I can gather reading all the disparate posts, I have to create that file by running one of the apps and "licensing" it? Then create a DMG in Composer to go along with the installation when I have to deploy to many computers. Is this correct?

I also don't want to deploy the AutoUpdater because we handle updates for our users, and I don't want them to get any prompts saying there's an update available. So, is this what the "choices.xml" discussion is about?

Like
SOLVED Posted: by donmontalvo

Yes I remember reading about that license file being distributed to 365 users being unsupported but we have a proper Volume License so it works for us.

Like
SOLVED Posted: by itupshot

@donmontalvo Huh? I'm talking about the same thing you said previously. Deploying that

/Library/Preferences/com.microsoft.office.licensingV2.plist

This is extremely confusing. I just want to know how to actually get it in the first place. I have a Volume License. So, from what I understand, I have to:

  1. Run one of the Office apps first
  2. Sign in with a Microsoft account it's asking for (I suppose it'd be our VLSC account)
  3. Capture the com.microsoft.office.licensingV2.plist with Composer
  4. Create a choices.xml to block the AutoUpdater and that Licensing.pkg from installing.
  5. Deploy the com.microsoft.office.licensingV2.plist as a separate package with the installer on subsequent computers

Is this the sequence?

Like
SOLVED Posted: by donmontalvo

Number 2 is not required with a volume license, and not supported if required. We never had to sign into anything on our volume license. Maybe you are on 365?

Like
SOLVED Posted: by itupshot

@donmontalvo No, I ran this loaded into JSS, and part of an imaging config. I was just testing it out.

I think that what you guys are saying is to just install it right off the desktop once manually to capture that license plist.

Like
SOLVED Posted: by Aziz

@itupshot

I think that what you guys are saying is to just install it right off the desktop once manually to capture that license plist.

Yup! Capture as a .pkg

Like
SOLVED Posted: by georgecm12

Keep in mind that capturing the licensing file from one machine and redistributing it to other computers is what Microsoft would refer to as "non-supportable," and may at some point no longer work. The next update to the VL version of Office, version 15.17, is due in December, and is said to include a package that administrators can distribute to the machines they administer to correctly generate the license file in such a way that is supportable.

If you aren't already there, you definitely want to join #microsoft-office on the MacAdmins Slack. Paul Bowden, an engineer with Microsoft, has been an active participant recently, and he has provided a ton of very useful information regarding Office 2016, not to mention been receptive to suggestions that the Mac administrator community have had about ways to make Office easier on administrators.

Like
SOLVED Posted: by itupshot

Sorry for being slow. I found this thread when I searched for a comparison between volume installer and 365 installer.

I just didn't know there were all these issues with this installer that people were getting worked up about (and Office 2011 for that matter). I've been deploying 2011 for a number of years, and the most annoying thing is that Office Assistant coming up post-install when a user launches it. Now, I know I could've made it skip that with a hack.

So this thread is basically about the same thing.

Like
SOLVED Posted: by georgecm12

@itupshot Sort of. With the volume licensing version of Office 2016, the installer attempts to launch the "Microsoft Office Setup Assistant.app" as the current user. If that fails (say, if you have an administrator trying to run the installer silently in the background, for example), the licensing file never gets created, and the software defaults to Office 365 licensing mode (versus site licensing). So, if you are in an organization that doesn't use Office 365, that's a major problem, as users wouldn't even be able to use Office in that state.

As I mentioned upthread, though, Microsoft is making some changes to the VL installer with the December release. They're spinning out the Volume Licensing into it's own installer, allowing administrators to more easily deploy Office 2016 silently. Stay tuned for more on that.

Like
SOLVED Posted: by itupshot

@blackholemac So, in the end, the bigger package that you created contains your choices.xml and the com.microsoft.office.licensingV2.plist just loose in there?

I thought of putting the latter in a DMG created with Composer along with plists that disable the "first-run" windows according to the blog that @calumhunter referenced. I tested those plists last night, and it worked to skip those screens. So, I thought of a Composer DMG that places the plists right after the Office installer. However, from your example, I suppose I can just include them within this bigger package, and use a postinstall script to move them to the right location.

The difference in my company's environment is that we are, in fact, upgrading to Office 365 with all the bells and whistles. So, I can't fiddle too much with the installer.

I just want our VL to be set, and then when the users first launch Outlook (because it's the first thing they always launch), they (or IT) can enter their account creds so they can use our company's new Office 365 service. What I'm wondering is if one logs into Office 365 on one app (like Outlook), it'll pass the info to all the apps so they don't have to enter that again.

I also don't want the AutoUpdate to install since IT will handle updates via JSS. So I want to get rid of this from popping up when they first run one of the apps:

Someone else referenced an article that discusses how to get rid of it, so I'll follow those instructions.

Like
SOLVED Posted: by itupshot

@georgecm12

Sorry I missed your post there. I took so long typing mine that I didn't see yours until mine posted and refreshed the page.

I used our VL installer, and ran it once to generate the licensing plist. Great!

When I added the "skip first-run windows" plists according to the article referenced upthread, I still got the following window in Outlook, which is OK because we will be moving to Office 365 anyway:

However, this is the only window I want users (or IT) to see initially so they can just log into Office 365, and get to work. I'm hoping this one dialog will set it for all Office apps.

Like
SOLVED Posted: by calumhunter

You should not capture and redistribute the com.microsoft.office.licensingV2.plist plist
Although a number of us have been doing this for a long time.
It is unsupported by MS, and has the potential to break.

Instead, you should generate the licence on each machine by running the all volume licence package included in the VLSC Office 2016 package.

This all volume licence package will be available with the 15.17 version of Office 2016 released in December.

Until then, you can easily extract the all volume licence package from your office 2016 installer you obtained from the VLSC site. Combine this "serializer" with the latest full suite package from MS's site and you have an up to date VL install. ie. install the 15.16 Office 2016 package, then run the serialised package to create the licensing plist file.

I have the details on my blog here:
https://themacwrangler.wordpress.com/2015/11/17/fun-with-microsoft-office-2016/

Like
SOLVED Posted: by itupshot

@blackholemac

How exactly are you generating the "choices.xml" file? Did you just make a plain text file in TextEdit or TextWrangler with the extension .xml?

I think the problem that @lkrasno and myself are running into is that maybe it's not properly formatted.

I followed the instructions in the post referenced by @bpavlov, where the author generated a whole new "choices" plist, and checked that it was a valid plist using the command:

$ plutil -lint /path/to/file.plist

It seemed like it checked out for me. In my file, I only want to exclude:

com.microsoft.autoupdate
com.microsoft.licensing.volume

Then, I created a composite PKG in Composer like the one you created with the Volume Installer, the choices.xml, the licensingV2.plist, and your postinstall script. I also added plists that make the applications skip the "first-run" windows. I then deployed this package as part of an imaging configuration with Casper Imaging to my test computer.

Once the machine rebooted after imaging, I checked that the plists were in the right location, and they were. However, AutoUpdate still installed. So, when I launched Excel, it skipped the "first-run," but I got that annoying warning:

So, now I'm wondering what happened there. Why did AutoUpdate still install?

Now, I'm going to try making a simple "choices.xml" file with TextWrangler, based on your example of only the array:

<array>
    <string>com.microsoft.autoupdate</string>
    <string>com.microsoft.licensing.volume</string>
</array>

Since you said that even by only doing this, it'll keep those two packages from being installed. So, I'm just saving my TextWrangler file as "choices.xml" and not adding any headers as you suggested. We'll see what happens.

@georgecm12 I understand that there may be a new VL installer in the horizon that may solve these issues, but I may need to have an installer ready before that one is released. That's why I'm trying to figure this stuff out. I really don't have the time to join some chat app.

Like
SOLVED Posted: by calumhunter

all the information you want for what you are trying to do is in the #microsoft-office channel on the macadmins slack site.

Like
SOLVED Posted: by itupshot

@calumhunter

I just read your blog. So, basically, you're saying to use the installer from the 365 Portal (which I also have), but extract the volume license package from the VL installer, and run them in sequence.

Will the AutoUpdate install as part of this method? If so, how do we stop the AutoUpdate from installing this way? Will I still have to bundle a "choices.xml" file with the suite installer?

I don't want my users to get that "Microsoft AU Daemon" warning, and any prompts that there's an update available. They don't have admin privileges, and will only get annoyed. We handle that for them in the background.

Which now begs the question, can the new updaters run silently in the background even if the app is running?

Like
SOLVED Posted: by plawrence

@itupshot

To avoid my users seeing the "Microsoft AU Daemon", I've just been installing the update .pkg's for each app (latest downloads are here then I install the volume licensing .plist afterwards. The update .pkg's are full installers for each app. Saves having to mess around with a choices.xml file.

Like
SOLVED Posted: by calumhunter

@itupshot

Correct. That will give you the latest version suite 15.16 and it will be Volume licenced. All in one hit.

The 15.16 suite package is about 1.3Gb. Where as if you deployed each app update which is a full installer minus licensing you'd be looking at deploying about 4.5-4.8gb.

No, it will still install the auto update app. You need to craft a choices XML plist that will omit that installer package.

First create your choices xml that deselects the MAU, which should 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">
<array>
     <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>com.microsoft.autoupdate</string>
    </dict>
</array>
</plist>

Then you can install with the following command:

sudo installer -pkg ~/Desktop/Microsoft_Office_2016_Installer.pkg -applyChoiceChangesXML ~/Desktop/no_mau.xml -target /

That will install the office package but it will apply the choice changes xml and deselect the MAU package.

I would not update the app if it is running. Potential data loss for my users would be far too much of a concern. I would probably stage that update so that it only gets installed when the machine is at the login window, or the app is not running. Probably throw a dialog message up to users while updating those apps to let them know its happening if you must do it while they are logged in.

Like
SOLVED Posted: by blackholemac

To all:

Sorry I haven't been active this weekend. Anyway, this post has gotten lots of hits since I last looked at it.

So, a couple of thoughts to bring up. This is one of those I wish I could just post my package. Right now it works really well for me. One change I have made since the original post...sorry. Right now my CTO is the only one with access to the MS VLSC. I have a deal where I only bother him once every couple of months to get a download. In the meantime, I studied the Office 365 package and found that they are exactly identical in all but name and one single package, the Office15_all_volume_licensing.pkg. What I have taken to doing is to use the Office 365 package that is freely downloadable and plugging in com.microsoft.office.licensingV2.plist where it is supposed to go. That suppresses the activation prompts...not all setup assistants, but the licensing prompts.

Anyway, I created a new package like the one shown below:

I created a postinstall script like the one shown below:

#!/bin/sh
installer -pkg /private/var/tmp/Microsoft_Office_2016_Installer.pkg -target / -applyChoiceChangesXML /private/var/tmp/choices.xml

rm -R -f /private/var/tmp/Microsoft_Office_2016_Installer.pkg

rm -R -f /private/var/tmp/choices.xml

mv -f /private/var/tmp/com.microsoft.office.licensingV2.plist /Library/Preferences/com.microsoft.office.licensingV2.plist

chown root:wheel /Library/Preferences/com.microsoft.office.licensingV2.plist

exit 0

Finally my choices.xml is the one shown below exactly. My only goal was to suppress the AutoUpdater on mine. I don't need to suppress the licensing as I am using the Office 365 version as my base but using the com.microsoft.office.licensingV2.plist as my license. This does work for our environment and gets a complete copy of Office 2016 installed.

<array>
    <string>com.microsoft.autoupdate</string>
</array>

The following command is what I use to view the available choices for any package.

sudo installer -pkg /path/to/Microsoft_Office_2016_Installer.pkg -showChoicesXML -target /

I then use the technique that MS themselves used for older installers to generate the choices.xml file: http://www.officeformachelp.com/office/administration/deployment/command-line/

My resulting file was the one contained above.

Hopefully this helps someone else because it has been verified to work here daily...I feel like the guy out in left-field at the moment. Rarely am I the one that things work for. Anyway, that being said, I totally welcome anything from the Microsoft team resembling a better, more admin-friendly installer. These type of tricks are typically reserved for hopeless packages.

I actually gave up on trying to understand the volume licensing package after @calumhunter 's post much earlier in this thread. I worried that copying a volume licensing .plist from machine to machine may not be the most supported. I very much welcome the command-line based serializer package that is planned for December that I learned about on other posts. Luckily, the com.microsoft.office.licensingV2.plist file could very easily be deleted from deployed machines and command line serialization could easily replace it...but only after strong testing internally.

Please let me know how I can help. I will note that OneNote does still require an Office 365 account...the app itself is designed that way. It cannot run strictly locally because all OneNote files are saved to an Office 365 account.

blackholemac

Like
SOLVED Posted: by itupshot

@plawrence I was thinking that route, too. But as @calumhunter said, it'd be a much bigger deployment.

@calumhunter I will experiment with that method today.

Regarding future updates: With my current Office 2011 environment, I'm able to package suite updates in Composer with a "NoQuit.xml" that allows the update to run silently even if the target computer is running the apps. If/When they quit and relaunch the apps, it's now the updated one. It has worked great for us. We haven't seen issues. I was just wondering if I could do the same with these new individual update installers.

Like
SOLVED Posted: by itupshot

@blackholemac Thanks for sharing your method. On my tests today, I think I will use a hybrid approach of your and @calumhunter's method since they overlap. I think I'm finally getting a grip on this.

As far as OneNote, my company is upgrading to Office 365 soon, which is why there's an urgency now to get the installer for these apps squared away. Once we transition, my users can use their new company-supplied Office 365 accounts to use OneNote if they choose to use it.

The only package I want to exclude from my installation is the AutoUpdater.

I'd rather not use just the plain Office 365 suite installer because it'll pop up too many things when we launch an app. So, this hybrid method of using it in conjunction with the Volume License pkg separately, a choices.xml, and suppress "first-run" plists seems like it'll work for what I want to accomplish: Only one login window when IT/users launch Outlook to get started. This way, the end user (or IT) can enter the user's account once, and boom! We're off to the races.

Like
SOLVED Posted: by itupshot

Great! Now I can't check against the "choices.xml" doc I made. I get the following error when I do the command -showChoicesAfterApplyingChangesXML:

installer -pkg /private/var/tmp/Microsoft_Office_2016_Installer.pkg -showChoicesAfterApplyingChangesXML /private/var/tmp/uchoices.xml
installer: Error -target parameter required
Usage: installer [-help] [-dominfo] [-volinfo] [-pkginfo] [-allowUntrusted] [-dumplog]
                 [-verbose | -verboseR] [-vers] [-config] [-plist]
                 [-file <pathToFile>] [-lang <ISOLanguageCode>] [-listiso]
                 [-showChoicesXML] [-applyChoiceChangesXML <pathToFile>]
                 [-showChoicesAfterApplyingChangesXML <pathtoFile>]
                 -pkg <pathToPackage>
                 -target <[DomainKey|MountPoint]>

What am I missing now?

EDIT: Sorry, I figured it out. Ugh.

Like
SOLVED Posted: by tcandela

@itupshot are you creating an office 2016 installation that installs Office 2016 based on this? Creating a zipped up package of the Office2016.pkg and choices.xml then using a script to kick off the install ?

installer -pkg /private/var/tmp/Microsoft_Office_2016_Installer.pkg -applyChoiceChangesXML /private/var/tmp/uchoices.xml

i've done this in the past with Office2011 but changed to using composer because I wanted the users not to see all those prompts when opening Word/Excel/Powerpoint.

are you seeing those same prompts with Office 2016 when opening Word, excel, ppoint?

there is 3 of them, here is 2 that i remember --- Colorful or Classic look --- get started etc...

Like
SOLVED Posted: by calumhunter

@tcandela, you can disable the prompts with config profiles

http://macops.ca/disabling-first-run-dialogs-in-office-2016-for-mac/

Like
SOLVED Posted: by tcandela

@calumhunter - i read the article. How would i exactly do this in the JSS when creating a 'configuration profile'? what payload is used ? do i add this line; for each application (word, excel, power point)

sudo defaults write /Library/Preferences/com.microsoft.Word kSubUIAppCompletedFirstRunSetup1507 -bool true

Like
SOLVED Posted: by tcandela

@calumhunter for testing, from a command prompt, i simple did

sudo defaults write /Library/Preferences/com.microsoft.Word kSubUIAppCompletedFirstRunSetup1507 -bool true

sudo defaults write /Library/Preferences/com.microsoft.Excel kSubUIAppCompletedFirstRunSetup1507 -bool true

sudo defaults write /Library/Preferences/com.microsoft.PowerPoint kSubUIAppCompletedFirstRunSetup1507 -bool true

how would i do this using Configuration Profile policy ?

Like
SOLVED Posted: by calumhunter

I like to use MCX To Profile

Heres an example config profile

It does the following things:
- Removes the first run dialog boxes.
- Sets MAU to fetch updates manually.
- Disables Sending of Telemetry data to MS
- Disable What's New Outlook (15.15)
- Disable What's New OneNote (15.15)
- Disable What's New PowerPoint (15.15)
- Disable What's New Word (15.15)
- Disable What's New Excel (15.15)

https://gist.github.com/hunty1/b60b018c3c0c1a09b455

Like
SOLVED Posted: by itupshot

Hi folks, something didn't work in my last test.

I followed the steps from @calumhunter and @blackholemac as follows:

  1. I expanded the Office_2016_Volume_Installer to a folder on the Desktop
  2. Flattened only the "Office15_all_volume_licensing.pkg" into a new file called "Office_2016_VL_serializer.pkg"
  3. Created my "uchoices.xml" with only the lines:

    <array>
    <string>com.microsoft.autoupdate</string>
    </array>
  4. I created an "office_with_choices.plist" file by issuing the command:

    installer -pkg /private/var/tmp/Microsoft_Office_2016_Installer.pkg -showChoicesAfterApplyingChangesXML /private/var/tmp/uchoices.xml -target / > ~/Desktop/office_with_choices.plist
  5. I generated a file with the original package's choices with the command:
    sudo installer -showChoiceChangesXML -pkg /private/var/tmp/Microsoft_Office_2016_Installer.pkg -target / > ~/Desktop/office_choices.plist
  6. I then compared the differences,

    diff -C5 ~/Desktop/office_choices.plist ~/Desktop/office_with_choices.plist

    and got the output:

    *** /Users/admin/Desktop/office_choices.plist   2015-11-25 11:49:04.000000000 -0600
    --- /Users/admin/Desktop/office_with_choices.plist  2015-11-23 12:16:10.000000000 -0600
    
    *** 138,148 **** <key>choiceIdentifier</key> <string>com.microsoft.autoupdate</string> </dict> <dict> <key>attributeSetting</key> ! <integer>1</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>com.microsoft.autoupdate</string> </dict> --- 138,148 ---- <key>choiceIdentifier</key> <string>com.microsoft.autoupdate</string> </dict> <dict> <key>attributeSetting</key> ! <integer>0</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>com.microsoft.autoupdate</string> </dict>

    It seems like it's done correctly.

  7. I fired up Composer and placed the Office 365 installer ("Microsoft_Office_2016_Installer.pkg") into a new package with my "uchoices.xml" file and my "skip first-run" plists.

  8. Included this postinstall script based on @blackholemac's:
  9. I loaded the resulting package into Casper Admin with the "Office_2016_VL_serializer.pkg" I made in Step 2. According to @calumhunter, the serializer should follow the main package.
  10. Fired up my test Mac mini, and tried to deploy the pair as part of a configuration:

OK, so after the machine finished doing the installations, the main apps installed, and my "skip first-run" plists were placed. BUT, I found the following:

Any ideas of where I went wrong?

Like
SOLVED Posted: by blackholemac

@calumhunter Sighs...I think we all hate this installer! Being that I don't personally have access to the VLSC, could you please post when the new December installer drops. Our CTO is the only one here with access, and I don't wish to keep bugging him more than I have to.

I wish I personally had time to troubleshoot @itupshot as I do sincerely wish to help, but I'm thinking we all need to regroup and reinvestigate after the new installer package drops. Maybe some reduced head banging will come of the new installer.

blackholemac

Like
SOLVED Posted: by calumhunter

@itupshot Re-read my post again. Pay attention to the commands i am running and the commands i am NOT running.

You seem to be doing a lot more than is required. Also not using the correct commands.
Also your choices.xml is not complete. Look at mine.

@blackholemac I just wrote out a whole thing then saw your on Slack and Paul has got you sorted.

FWIW i download the latest sku-less full suite installer (Currently 15.16) from MS its 1.2Gb. Then i apply the VL serialiser package and i have a fully installed and up to date Office 2016 VL. Can't get much easier than that.

Until Casper supports choice changes xml natively (Like Munki) You would have to script the install.

Like
SOLVED Posted: by tnielsen

I'm not sure why y'all just don't run the installer Microsoft supplies then patch it. Freakin' cake.

Like
SOLVED Posted: by blackholemac

I was just going to post and refer future posters there. The MacAdmins Slack is the place to go to solve this. I still stand by my choices.xml method, BUT there are other ways given what can be learned there. Go specifically to the #MS-Office channel.

Like
SOLVED Posted: by calumhunter

@tnielsen I think the issue is scale.
When you have thousands or tens of thousands of clients, with tens, hundreds, thousands of remote sites.
Pushing a 1.3Gb installer package, and then ~4Gb of patches to bring it up to date is a lot of data that needs to be pushed around or pulled down the WAN from each client.

Like
SOLVED Posted: by tcandela

when i run the installer using the -applyChoiceChangesXML it works and i have the licenseV2.plist in place

but if i have a policy that places the office2016VLinstaller.pkg/mychoices.plist in /private/tmp etc.... and have a script run it, the installation is NOT licensed, when users open Word, Excel or PPoint they are prompted to 'sign in to active office' and they see the popup for 'microsoft AU daemon' - even though my choices.plist has that not to install.

So I i ran the installer using the -applyChoiceChangesXML it works and i have the licenseV2.plist in place, ran excel/word/ppoint 15.16.0 updaters, and used composer to take the before/after snapshot to create my office2016.dmg. uploaded it to casper admin (indexed it), want to test uninstall also.

now i'll test this office2016.dmg via policy.

Like
SOLVED Posted: by tcandela

so on the computer where i did the Composer before/after snapshot it has the 'check for updates' NOT available in the help menu- as specified NOT to install in the choices.plist file

but when i install the dmg via policy the 'check for updates' APPEARS in the help menu of each application (excel/word/ppoint).

I did not open any application from the computer that i used composer on. When creating the dmg i deleted the ensuing 'user' folder that was listed in the composer window.

com.microsoft.licenseV2.plist is in /Library/Preferences folder of the computer that had office 2016 installed via policy. trying to figure out why 'check for updates' is available.

not sure if i should of left the users folder in composer when making the dmg and check feu/fut in the policy? will recreate the dmg

Like
SOLVED Posted: by calumhunter

@tcandela Don't use composer to snapshot, snapshots are bad. Also the licensing file the com.microsoft.licensev2.plist will soon not work across machines.
You will not be able to take that plist from one machine and use it on another.
In other words you can not use it in a modular image, or a composer package etc etc

It sounds like from your first post that your script to install didn't apply the choice changes.
Care to post your script?
You need to install in order
1. install the office 2016 suite, with the choice changes xml

Also you need to ensure that you are using the latest installer from the VLSC site, it should be version 15.14

again i can't stress enough, do not use composer to create a snapshot dmg

Like
SOLVED Posted: by perrycj

Thanks for all the contributions that everyone has made so far to getting this right.

Not to throw a wrench into the gears of this thread but I'm assuming these workflows would not work if it was/is a straight O365 environment, non-volume licensed? At least that's how it seems to me.

Like
SOLVED Posted: by itupshot

I'm revisiting this thread again after a few days break from it. I've been working on a couple of other projects that have been taking all my time.

@blackholemac The new Volume Installer is not available yet. I just checked VLSC.

@calumhunter I'll review your procedure today since my boss wants to have this ready for next Wednesday. So, the heat is on.

I want to reiterate that I appreciate the work that you both did on this topic. Thank you.

Like
SOLVED Posted: by blackholemac

Check out the MacAdmins Slack still...a very knowledgable Microsoft employee is running a channel there and has been VERY helpful in working with what is vs. isn't supported and can offer better advice than I on building a good one. I am rethinking my approach as a result.

Like
SOLVED Posted: by georgecm12

@perrycj O365 is much easier than volume licensing. You don't need to worry about the license file or any of that. Without the volume license file in place, the software just natively works as a copy that requires a login.

Like
SOLVED Posted: by tomr

@tcandela for what its worth, I renamed Microsoft's Autoupdate program from Microsoft AutoUpdate to MicrosoftAutoUpdate (removed the space) and this solved the problem of the apps trying to check for updates as soon as they were launched along with the associated message indicating that Autoupdate was not registered with Launch Services (I forget the exact error message). It also removed the Check for Updates choice from the Help menus. Kind of brute force I know but it did the job. You can still run AutoUpdate manually if you want or use whichever method you normally use to patch Office.
We are using the non volume licensed version of 2016 but I would think the end result might be the same.

Like
SOLVED Posted: by itupshot

Partial success.

@calumhunter Using your version of the "choices.xml" file I was able to exclude the Auto Updater from installing.

Now, I'm going to tackle converting the "skip first-run" plists into Config Profiles using mcxToProfile.

Last step will be to revisit the serializer.

Like
SOLVED Posted: by tcandela

@tomRGA at what point did you do the renaming of Microsoft auto update? Are you using composer?

Like
SOLVED Posted: by talkingmoose

@itupshot, curious to know why you're using mcxToProfile. You can upload your plists directly into a custom configuration profile in the JSS.

Like
SOLVED Posted: by itupshot

@talkingmoose The "Set Once" key, which is not possible with regular Configuration Profiles.

mcxToProfile leverages the Custom Configuration Profile to import a Profile that has this key in it. Otherwise, the preference will always be ON and the user won't really be able to make changes.

Like
SOLVED Posted: by tomr

@tcaldana I used a post install script to rename it and to change the keys in the autoupdate plist to manually check for updates.
I did use composer to originally pack up 2016. No issues with that so far and we have it deployed to over 500+ users and counting. I didn't include any user specific files and handled any preferences via the post install script. For the most part we left everything vanilla because we want our users to see the welcome screens, sign in and activate office, and let all the Microsoft cloud stuff we bought get appropriately mapped to the user. I did find the keys for suppressing all of the welcome screens but in the end I thought that it was just easier to leave them so the user's will click through them and see the activation screen. The one issue i had with AutoUpdate is that Microsoft released a new version a month or 2 ago (3.2) and I had to make sure that was installed first before i made any changes or wanted new updates to come down via autoupdate (which we don't use) since we had already begun deploying 2016. It wasn't a big deal to pull it down, package it up, and script the changes. The new autoupdate i think is when i noticed those Daemon messages starting to pop up and the name changed really helped with that.

Like
SOLVED Posted: by itupshot

@tomRGA Those AutoUpdate daemon messages are part of the reason why I'm excluding the AutoUpdate app from my deployment. It's useless for our end users since we're handling updates for them.

What's more important for me is to set their first launch defaults to behavior they're already used to:
- No welcome or what's new
- No document gallery at app launch every time
- Page width zoom view in Word
- Autorecover set for 2 mins

The way we've been doing this is by injecting plists in the User Template (to apply to any new user that logs in). Or, injecting these plists to existing users' home folders if we're adding software to an existing setup.

However, mcxToProfile has the potential to replace this method by converting the plists to Configuration Profiles. I have to do more testing to make sure that the "Set Once" key is applied, and works properly in the resulting profiles, though.

A second method with potential is writing a script that uses "defaults write" to create a plist in the /Library folder that will have all the above preferences set. This plist would then apply "Once" to any user logged in, or that will log in, to the computer. They're then free to make any changes if they wish.

So far, I have only tested the second method with one key, the kSubUIAppCompletedFirstRunSetup1507.

Like
SOLVED Posted: by tomr

@itupshot The only reason I ended up deploying AutoUpdate was if our remote techs need to install updates on the fly (which doesn't happen often) they had the option.

I've been doing the same as far as inserting plists into user templates and modifying plists (using defaults) for existing users since for most things we give them some degree of latitude.
Though I would like to explore the mcxToProfile option for management purposes.

Aside from some Outlook first run preferences (which had to do with asking users to import mailboxes from previous versions of Outlook and changing navigation views) I've only tested the key you mentioned. Seemed to work in most of my scenarios but like i said we ended up wanting out users to see those screens.

Like
SOLVED Posted: by bpavlov

I've had mixed results unfortunately with SetOnce in custom profiles created through MCXtoProfile and uploaded to Casper. In some instances what would happen is that settings would continue to revert to the profile's values everytime a computer is restarted. Obviously that can be annoying if say for example you're trying to set the home page just once and the user has to continue to change it because they want something different. At this point, I assume if it needs to be set once, I just forget about it. I figure if it's important enough to manage, then it needs to be enforced always and if it isn't important enough then I don't need to manage it. YMMV of course. Always good to do testing.

Like
SOLVED Posted: by itupshot

There's always Managed Preferences as a fallback while the OS still pays attention to them.

I've just been experimenting with the alternatives I mentioned because the message seems to be that Apple is killing MCX off. :-(

Like
SOLVED Posted: by itupshot

So, guess what, kids? All our efforts to keep MAU from installing with Office 2016 are undone when you install Lync.

Please note what Casper is installing as part of an imaging config:

But when you check the "Installer.app/SWU" tab, our friend, MAU is there. I have confirmed by navigating in Finder to /Library/Application Support/Microsoft that MAU, and MERP (old versions, no less) are installed:

I created a "no_mau_lync.xml" choices XML file for Lync that excludes "appsupport," which is the package that installs MAU and MERP from Lync's installer. I based it on @calumhunter 's choices XML file that worked for my Office 2016 installer.

<?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">
<array>
     <dict>
        <key>attributeSetting</key>
        <integer>0</integer>
        <key>choiceAttribute</key>
        <string>selected</string>
        <key>choiceIdentifier</key>
        <string>appsupport</string>
    </dict>
</array>
</plist>

I then created a new package in Composer bundling the Lync Installer, the "no_mau_lync.xml" file, and a postinstall script that applies it. It looks like it worked with my test laptop.

Like
SOLVED Posted: by calumhunter

@itupshot I highly recommend you invest in Pacifist, It allows you to view exactly what is in a package, any sub packages, scripts, resources etc etc.

It's an invaluable tool that will show you exactly what a package is going to do.

If you dump Lync into Pacifist you can quickly see what is happening.

Like
SOLVED Posted: by donmontalvo

Pacifist is BBEdit, where Suspicious Package is TextWrangler. :)

Mother's Ruin's Suspicious Package plug-in beats Pacifist's QuickLook plug-in...so we use the former to compliment the later. This combo is unbeatable.

PS, thanks for @jaharmi for recommending it at previous gig.

Don

Like
SOLVED Posted: by blackholemac

I've been using Pacifist for years...Suspicious Package looks like it might be a good tool to add to the box.

Like
SOLVED Posted: by donmontalvo

@blackholemac we asked Pacifist why they don't offer a pref to offload QuickLook to Suspicious Package, got a nice response, hope it happens!

Like
SOLVED Posted: by itupshot

I have Pacifist. I purchased it when I first started reading this topic. That's how I found that the package that installs MAU and MERP from Lync is called "appsupport" after I saw the receipts in my JSS.

I confirmed the identifier with the "-showChoiceChangesXML" command. Hey, I've been paying attention to your guys' methods.

Thanks for all the tips. :-)

Like
SOLVED Posted: by tcandela

@itupshot so how are you getting the com.microsoft.office.LicenseV2.plist onto your computers ?

I have used the -applychoicechangesXML with Office2011 and now trying it with 2016, but the LicenseV2.plist is not getting put into the /Library/Preferences on the computers getting the policy.

If I run the Microsoft_Office_2016_Volume_Installer.pkg directly on a computer, it puts the com.microsoft.office.LicenseV2.plist in /Library/Preferences

I am ending up doing what @blackholemac is doing (read his comment on 11/13/15 10:54pm). This is basically the same thing I did for Office2011, but now based on Office2016 VL licensing I grabbed the com.microsoft.office.LicensingV2.plist from a computer that already had it, and am now using that LicensingV2.plist in my Office2016 installation.

my choice changes simply unchecks Outlook and AutoUpdate from installing.

<?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">
<array>
<dict> <key>attributeSetting</key>
! <integer>0</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>com.microsoft.outlook</string>
</dict>
<dict> <key>attributeSetting</key>
! <integer>0</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>com.microsoft.autoupdate</string>
</dict>
</plist>

Like
SOLVED Posted: by bentoms

@tcandela you're better off using the serialiser.pkg, especially with some upcoming changes.

Like
SOLVED Posted: by talkingmoose

@tcandela, the issue you're describing with serialization should be fixed in the v15.17 release on Microsoft's Volume License Service Center (VLSC) during the first week of January. Specifically, the license file will install correctly when Office 2016 is deployed silently via command line, which Casper uses.

Don't rely on simply copying the com.microsoft.office.LicenseV2.plist file from machine to machine. This works today, but Microsoft considers it a bug. It will be fixed around v15.20 (ETA end of Q1 2016). The serializer part of the installer is suppose to gather information specific to the machine and use that to create a unique com.microsoft.office.LicenseV2.plist that will only work on that machine.

For those machines where you've already deployed the licensing file, you'll find a second installer on the VLSC in January called something like "VL Serializer". This is a standalone package you can deploy after the fact to correct the serialization issue.

Right now, I think most folks are deploying the com.microsoft.office.LicenseV2.plist the same way you've described. It works. But be prepared to have to use the VL Serializer when it's released on existing machines. Office 2016 will deploy to new Macs correctly licensed starting with v15.17 in January.

Like
SOLVED Posted: by tcandela

@talkingmoose awesome, thanks for the info. There is no rush for me to get 2016 out into the environment here.

I have only did my Office2016 deployment it to a couple test macs, so looks like i'm good to wait for the v15.17 release.

I currently zip up Microsoft_Office_2016_Volume_Installer.pkg and my Office2016choices.xml and put that zipped file in /private/tmp, drag that into composer, and then make 'postinstall' script to do the unzipping and installation, then pkg it up and away I go.

same process for installing the updates, zipping up of the excel/onenote/ppoint/word updaters ......

Like
SOLVED Posted: by donmontalvo

(1) volume installer, (2) serializer pkg, and (3) suppression script.

Done.

Like
SOLVED Posted: by tcandela

@bentoms I read the information in the page you linked.

little confused, So v15.17 will include the serializer.pkg ?

will v15.17 office2016_installer.pkg run the serializer.pkg ? or will I have to run the serializer.pkg after the installer.pkg?

Like
SOLVED Posted: by donmontalvo

The 15.17 VL DMG has two PKGs; one is the Serializer.

Like
SOLVED Posted: by talkingmoose

The full VL v15.17 installer (coming in January) will have a "fixed" serializer package within it to allow you to deploy it without having to do any workarounds for missing license files.

Run the standalone VL Serializer (also coming in January) just for those installations where you copied a com.microsoft.office.LicenseV2.plist file from machine to machine. This will fix their license files (make them unique to each machine) before Microsoft fixes its bug that allowed you to copy it in the first place.

Like
SOLVED Posted: by pgh

@talkingmoose @bentoms

For those cannot wait for the 15.17, what is the recommended way to package and distribute office 2016 15.16?

Like
SOLVED Posted: by talkingmoose

For now, the simplest way to license a VL edition of Office 2016 is to deploy the com.microsoft.office.LicenseV2.plist file after running the installer. That will work until v15.20 is released around March 2016 (my ETA not Microsoft's).

However, once January arrives and the VL Serializer is released on the VL portal, you should run it on your Macs before March 2016 to avoid any licensing issues going forward.

Like
SOLVED Posted: by pgh

@talkingmoose

What if i just built office 2016 15.16 into the image and capture it? then deploy that image?

Like
SOLVED Posted: by pgh

@talkingmoose

However, once January arrives and the VL Serializer is released on the VL portal, you should run it on your Macs before March 2016 to avoid any licensing issues going forward.

And is this understanding correct once it arrives All i have to do is include both the packages into the install configuration and set to install during t he imaging process?

Like
SOLVED Posted: by talkingmoose

@pgh, sorry for a long-winded explanation...

Until you get the v15.17 full installer from the VLSC in January, deploy Office 2016 using whatever method works for your environment. The purpose of the VL Serializer will be to correct/rebuild/regenerate the com.microsoft.office.LicenseV2.plist that we've been copying from Mac to Mac to work around the installer issue that prevented it from installing in the first place.

Series of events:

  1. Office 2016 installer has a bug that prevents the com.microsoft.office.LicenseV2.plist licensing file from deploying correctly.
  2. Mac admins discover they can copy the com.microsoft.office.LicenseV2.plist file from a working Mac to a non-working Mac to correct the problem.
  3. Microsoft corrects the Office 2016 installer to correctly deploy the com.microsoft.office.LicenseV2.plist file in v15.17 (coming in January to the VLSC).
  4. Microsoft discovers our workaround for copying the com.microsoft.office.LicenseV2.plist to our Macs and considers this a bug. They announce they will fix this bug come v15.20.
  5. To avoid having to completely reinstall Office 2016 just to correct the licensing, Microsoft provides Mac admins a standalone VL Serializer (coming in January to the VLSC) to help us regenerate the com.microsoft.office.LicenseV2.plist licensing file where we've already copied it to our Macs.
  6. Microsoft releases v15.20 (ETA March 2016). This version will no longer allow copied com.microsoft.office.LicenseV2.plist files to work.

What's the bug that Microsoft is fixing? The serializer part of the installer is suppose to generate a com.microsoft.office.LicenseV2.plist file that's unique to the machine by embedding hardware information collected from the machine. That's not happening now, but it will be happening come v15.17 and enforced come v15.20.

Like
SOLVED Posted: by pgh

@talkingmoose

Thanks for summarizing, it explained alot.

No other method i could find would work some i'm building office2016 into the image, i;m about to capture it with casper composer and will let you know how it goes. I have installed office2016 and done all the updates for office and el capitan updates. As we do not have the serializer until January unless there is something im missing i could not get it to work while installing the .pgk from casper imaging.

Every time i tried installing using casper it would not work i would have the issues discussed in the below link

https://jamfnation.jamfsoftware.com/discussion.html?id=18155

Like
SOLVED Posted: by tcandela

I will not install any Macs with Office 2016 until v15.17.

just to confirm v15.17; will have 2 .pkgs (installer/serializer)

will the v15.17 office2016_installer.pkg run the serializer.pkg ?
OR will I have to run the serializer.pkg after the installer.pkg?

Like
SOLVED Posted: by talkingmoose

@tcandela, if you wait until v15.17 then you only need run it. You do not need to run the VL Serializer.

The VL Serializer is primarily intended for folks who have copied the com.microsoft.office.LicenseV2.plist file to Macs to serialize them.

Like
SOLVED Posted: by tcandela

ok, so with v15.17 Office2016_installer.pkg will correctly add the LicenseV2.plist , no need to run the serializer.pkg along with v15.17 installer.pkg, got it thank you.

serializer.pkg is for macs that have a copied LicenseV2.plist.

Like
SOLVED Posted: by itupshot

@tcandela: I'm just catching up again with this discussion as I've been busy with my employer's Office 365 migration, and a few other projects.

I got the Volume Serializer pkg ahead of time from Microsoft as my company had an immediate need to deploy the applications. We're using the Office 15.17 installer already available from the Office 365 web portal. Since we are a Volume Licensing customer, I made a case of getting the serializer ahead of final release. We didn't want to use just the Office 365 installer because it would count as one install per user.

I run them paired in a Self Service policy. As I detailed in my previous posts, my only exclusion in the choices.xml is AutoUpdate. So far, so good.

Like
SOLVED Posted: by tcandela

@itupshot are you finding it necessary to install both the installer.pkg and the serializer.pkg for v15.17 ?

in previous posts it was said that only the installer.pkg in v15.17 will take care of Volume licensing office2016 correctly. No need to run the serializer.pkg

Like
SOLVED Posted: by AVmcclint

I'm getting really tired of all the mystery and guesswork surrounding the supposed-to-be-straight-forward process of deploying MS Office. Has the Microsoft engineer said if there is going to be official, publicly available documentation to cover the proper and approved methods? If I could point to a MS web page and show my boss how much of a C#!*@& F(#&(@! it is, I can get some relief from the pressure to get this deployed to all our Macs. As of now, all the tricks suggested to get it properly deployed and updated have been found on message boards that don't really hold a lot of authority. Everything I've read here about what is supposed to come in the future is just unverifiable rumor. If MS would step up to the mic and state "here's how it's done", that would be a wonderful thing.

Like
SOLVED Posted: by CGundersen

@tcaldana

From a solid source:

"Yes, you only need to run the VL Serializer if you a) need to repair the license b) want to use an Office 365 package for VL. The standard VL suite package has a built-in serializer."

edit: I'm referring to 15.17 release.

I think it's awesome that someone from MS is representing and working with the community. Honestly, I don't see the same level of collaboration from Apple these days.

Like
SOLVED Posted: by blackholemac

I had kinda given up on this thread as things had been working for me....BUT...do checkout the MacAdmins Slack page as I have learned a lot and have been helped a lot on this installer.

Some facts I know from Microsoft Sources:

  1. The Volume License Serializer is just that...a serialization package which serializes the product the right way. My source has told me that it will both correct the misdeployed .plist AND Volume Serialize a product with no serialization.

  2. The same source told me that MS's goal is to move toward a SKU-less download of the MS Office 2016 for Mac package over time. This way, you are not "gated" by the VLSC necessarily, but you do need to have a source to get the serializer.

  3. The Volume License Serializer will re-serialize any shipping build (didn't ask about beta builds, but didn't care) properly and set up a proper om.microsoft.office.LicenseV2.plist

  4. I can confirm what @talkingmoose said about "fixing the licensing bug" in 15.20.x, but the source says that MS will get the word out to the community heavily AND announce early when they plan to squash the bug.

  5. As others have discussed, my "source" gave me the serializer package ahead of time and my workflows have been redesigned around it.

I can try to help more, but my advice is to reach out to your MS reps and discuss this and maybe get early access to the package if desperate. It is my hope that MS will do a Office 2016 for Mac Resource Kit like they have done with previous versions.

Like
SOLVED Posted: by tcandela

hopefully there will be an uninstaller for Office 2016 for mac

Like
SOLVED Posted: by talkingmoose

@AVmcclint, nothing has been released yet. We're simply getting a heads up on what's to come.

Like
SOLVED Posted: by pgh

@blackholemac @CGundersen

So what happens to the macs that have been deployed that using the same Plist Do those have the be serialized by using the serializer package, or would those be fixed through office updates? If they are not re serialized does office just stop working. Will Microsoft kill office on those Macs so to speak?

The only way i got office to actually work in el capitain is to build it into the image. Then deploy that image with capser. It does not work correctly if installing during imaging or post. The program would not open.

@AVmcclint

I agree i wish there was more documentation of this process.

Like
SOLVED Posted: by CGundersen

@pgh

If you have deployed using the same plist, yes, the "Microsoft_Office_2016_VL_Serializer.pkg" will need to be used to repair/correct licensing issue. I'm not sure what happens when you reach deadline later in Q1 2016 (if you haven't run serializer). Your Office install turns into a pumpkin? Sorry.

Like
SOLVED Posted: by talkingmoose

@pgh, there's no process to document yet. Nothing has been released yet. Things are still a work in progress.

To answer your question about serialization...

If you copied the com.microsoft.office.LicenseV2.plist license file from one Mac to another then come v15.20 that license file will break and Office applications will stop working. You'll have about three months to correct this in your environment once the new software releases in January.

Like
SOLVED Posted: by tcandela

anybody see the Office 2016 15.17 VL installer yet ?

Like
SOLVED Posted: by jacopo.pulici

Hi do, @tcandela .
Just downloaded from VLSC, now I have to package the installer together with the updaters (Outlook and Word) and I'm good to go.

Like
SOLVED Posted: by tcandela

Hi @Jachk so you have the 15.17 VL installer.pkg did it also come with the serializer.pkg ?

updaters.pkg for each Office 2016 application are individual updater downloads for each (word excel pppoint etc..) ?

to get it from VLSC do i need login credentials ?

Like
SOLVED Posted: by jacopo.pulici

Yes, this is what you you'd find in the DMG.

And yes, you need credentials to log in the VLSC.

Like
SOLVED Posted: by benbass

I found that the VL serializer is still the old "launch an app and then delete it." version. I believe that the 15.20 (?) version that will be released in a week or two should have a serializer that will work in a deployment environment.

Like
SOLVED Posted: by powellbc

I ran the serializer from Self Service to test deployment and the (copied over) com.microsoft.office.LicenseV2.plist file was not modified in any way. Should this have happened? It also was unmodified when running the serializer package locally.

Like
SOLVED Posted: by dgreening

So, on that (the copied file not getting updated): I have had to script the removal of the copied licensing file, and THEN run the serializer, which works like a charm. pbowden said that a future version of the serializer will overwrite the plist no matter what.

#!/bin/bash

# check for existance of Office 2016 licensing file and remove it if found or echo and exit if not
if [[ -e "/Library/Preferences/com.microsoft.office.licensingV2.plist" ]]; then
    echo "License file found! Removing it!"
        rm /Library/Preferences/com.microsoft.office.licensingV2.plist
        exit 0
else
    echo "License file not found! Exiting!"
fi
exit 0
Like
SOLVED Posted: by calumhunter

I don't understand how people are having so much difficulty with all this. Its about as simple as can be.

  1. Take the Microsoft_Office_2016_Volume_Installer.pkg from the VLSC portal and install it any way you like -> DONE

OR

  1. Take the office 365 installer package from the publicly available MS site i.e. the Retail/non VL version. Install that first, then install the VL serialiser package -> DONE

No mess, no fuss.

/Shrug

Like
SOLVED Posted: by powellbc

@calumhunter Comments in this thread indicate the serializer package would be a way to fix (i.e. properly license) machines that used a duped com.microsoft.office.LicenseV2.plist file.

Like
SOLVED Posted: by CGundersen

The latest info appears to be that you must remove the copied/existing v2 plist before running serializer. It's on MS's radar for correction ... and thanks to @calumhunter for getting that clarified on Slack. :)

Like
SOLVED Posted: by calumhunter

the process is the same.
currently the 15.17 serialiser does not remove/overwrite an existing v2.plist
but then it doesn't have to yet because the apps still function correctly with a copied v2.plist

MS will fix the serialiser to remove/overwrite the v2.plist before the apps fail to work with a copied v2.plist
don't concern yourself too much with this. It will be fixed when it needs to be.
The process will remain the same as mentioned above.
If you wish to be super proactive, run a preflight script to remove the v2.plist before the vl serialiser package installs.

Like
SOLVED Posted: by skeb1ns

I deployed a policy yesterday that runs the script that @dgreening shared before running the Serializer package. However, the new unique .plist doesn't get generated on some machines even though the .pkg says that the "installation" succeeded, leaving the user prompting for activation the next time an Office App starts.

I manually placed the widely used standard .plist as a temporary workaround but I really want to get the Serializer package to work to avoid massive activation issues when Microsoft pulls the plug on this activation method.

Tested the policy on a test device first and that worked fine. Anyone else got this issue as well?

Like
SOLVED Posted: by calumhunter

@rschenk How did you install the Office apps on the machine where teh serialiser failed?
What installers did you use?
Did you use the updater installers or the full suite or standalone app installers?
The updaters do not contain the licencing helper stuff which the serialiser requires to be installed first.

Only the full suite installer or standalone app installers are supported.

Like
SOLVED Posted: by skeb1ns

@calumhunter I've build a custom .pkg containing the Microsoft_Office_2016_Volume_Installer ISO from september (pre 15.17), the separate 15.17/15.17.1 patches, the latest autoupdater,the license .plist, and a script to install Office + the patches and to place the .plist in Library/Preferences.

Pretty much the same method that most admins used I believe. :)

Like
SOLVED Posted: by calumhunter

@rschenk Thats your problem

Use the full suite installer or the standalone app installers

The links to these installers can be obtained from here:
http://macadmins.software

I'll repeat again, do NOT use the updater packages. Use only the standalone packages.

Like
SOLVED Posted: by calumhunter

Like i said in my post earlier, i think you are doing far too much work and over complicating things

  1. Grab the full suite installer from the http://macadmins.software site
  2. Deploy/install the full suite installer package (15.17) (contains all the apps in one pkg ~1.3gb)
  3. Deploy/install the VL serialiser package to licence the 15.17 suite of apps

end of story.

no repackaging, no scripting, no plist

no mess, no fuss

Like
SOLVED Posted: by skeb1ns

@calumhunter

I've just rebuild my .pkg using the same method including the Serializer without the default license .plist and I did a modification on the script to run the Serializer at the end. This seems to work in my test VM resulting in a generated license file so new installations should be covered.

What do you suggest concerning the existing installations? Replace all the current apps with the full installers and a second run of the Serializer package?

Like
SOLVED Posted: by calumhunter

for existing installs simply run a script to remove the plist if it exists before the serialiser package installs.
You could pull apart the serialiser package and insert a preinstall script and use that.

Like
SOLVED Posted: by tcandela

on computers that yet to have Office 2016 installed, installing the new v15.17 Microsoft_Office_2016_Volume_Installer.pkg should license the installation correctly.

no need to use the serializer.pkg

Like
SOLVED Posted: by m.higgins

I can also confirm what @tcaldana has mentioned. The latest version of the VL installer works just fine

Like
SOLVED Posted: by donmontalvo

@calumhunter wrote:

Like i said in my post earlier, i think you are doing far too much work and over complicating things Grab the full suite installer from the http://macadmins.software site Deploy/install the full suite installer package (15.17) (contains all the apps in one pkg ~1.3gb) Deploy/install the VL serialiser package to licence the 15.17 suite of apps end of story. no repackaging, no scripting, no plist no mess, no fuss

I thought the VL serializer PKG isn't needed if the full VL installer is run? Someone corrected me in another thread when I mentioned the same, needing to run both.

Like
SOLVED Posted: by calumhunter

@donmontalvo Read up bro, I explained earlier

Posted: 1/5/16 at 5:30 PM by calumhunter I don't understand how people are having so much difficulty with all this. Its about as simple as can be. Take the Microsoft_Office_2016_Volume_Installer.pkg from the VLSC portal and install it any way you like -> DONE OR Take the office 365 installer package from the publicly available MS site i.e. the Retail/non VL version. Install that first, then install the VL serialiser package -> DONE No mess, no fuss. /Shrug

I'll try to clarify a bit more.

The reason someone might choose to use the retail/0365/sku-less version is that this gets updated sooner than the version on the VLSC site.

For example only recently there was the 15.16 version available from MS as 0365/sku-less but the VL version on the VLSC portal was 15.14.

So if you want to be on top of the latest version, always grab the retail/0365/sku-less version then serialise it with your vl serialiser package.

Like
SOLVED Posted: by donmontalvo

Right but for those of us using VL only, no need to run both the VL installer and VL serializer. Correct?

Like
SOLVED Posted: by pgh

@donmontalvo

yes i would like some clarification my self.

Do i just add the install pkg to the install list and the serializer?

Or is the serializer ran after-install?

Like
SOLVED Posted: by pgh

What if i just build office 2016 into the MAC os image its self can i run the serializer during the imaging process?

Like
SOLVED Posted: by Aziz

@pgh

If you're installing Microsoft Office 15.17 or higher, there is no need for the serializer during imaging

Like
SOLVED Posted: by pgh

@Abdiaziz

So i just add the office install pkg to list of programs to be installed during the imaging process and that it?

I dont do anything post install, after the imaging process...

Like
SOLVED Posted: by Aziz

@pgh

Yes. You can check for it, and it will be activated. The serializer is meant for people who want the latest version of Microsoft Office from O365, then use the serializer to activate it.

Also, if you were using the .plist copying method of activating Office, you'll need to deploy the serializer to re-activate Microsoft Office.

Like
SOLVED Posted: by pgh

@Abdiaziz

@donmontalvo

Ok i added the PKG directly to casper not editing and it still will not work it install the application but when i go to launch them i get the below.

#!/bin/sh

√Process:               Microsoft Word [735]
Path:                  /Applications/Microsoft Word.app/Contents/MacOS/Microsoft Word
Identifier:            com.microsoft.Word
Version:               ???
Code Type:             X86 (Native)
Parent Process:        ??? [1]
Responsible:           Microsoft Word [735]
User ID:               501

Date/Time:             2016-01-13 12:16:00.912 -0500
OS Version:            Mac OS X 10.11.2 (15C50)
Report Version:        11
Anonymous UUID:        005799DB-0850-F6C9-F855-B85C80FE7DF7


Time Awake Since Boot: 82 seconds

System Integrity Protection: enabled

Crashed Thread:        0

Exception Type:        EXC_BREAKPOINT (SIGTRAP)
Exception Codes:       0x0000000000000002, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
  Library not loaded: @rpath/mbukernel.framework/Versions/A/mbukernel
  Referenced from: /Applications/Microsoft Word.app/Contents/MacOS/Microsoft Word
  Reason: image not found

Binary Images:
0x8fefb000 - 0x8ff2f5cf  dyld (360.18) <25D51D2B-794C-3911-9EEE-B1F0035D7104> /usr/lib/dyld

Model: iMac12,2, BootROM IM121.0047.B1F, 4 processors, Intel Core i5, 2.7 GHz, 4 GB, SMC 1.72f2
Graphics: AMD Radeon HD 6770M, AMD Radeon HD 6770M, PCIe, 512 MB
Memory Module: BANK 0/DIMM0, 2 GB, DDR3, 1333 MHz, 0x02FE, 0x45424A3231554538424655302D444A2D4620
Memory Module: BANK 1/DIMM0, 2 GB, DDR3, 1333 MHz, 0x02FE, 0x45424A3231554538424655302D444A2D4620
AirPort: spairport_wireless_card_type_airport_extreme (0x168C, 0x9A), Atheros 9380: 4.0.74.0-P2P
Bluetooth: Version 4.4.3f4 16616, 3 services, 27 devices, 1 incoming serial ports
Network Service: Ethernet, Ethernet, en0
Serial ATA Device: ST31000528AS, 1 TB
Serial ATA Device: HL-DT-STDVDRW  GA32N
USB Device: USB 2.0 Bus
USB Device: FaceTime HD Camera (Built-in)
USB Device: Hub
USB Device: Keyboard Hub
USB Device: Apple Optical USB Mouse
USB Device: Apple Keyboard
USB Device: BRCM2046 Hub
USB Device: Bluetooth USB Host Controller
USB Device: USB 2.0 Bus
USB Device: Hub
USB Device: USB 3.0 FD
USB Device: IR Receiver
USB Device: Card Reader
Thunderbolt Bus: iMac, Apple Inc., 22.1
Like
SOLVED Posted: by tcandela

here is my choicechangesXML. It is not installing OUTLOOK (like intended), but I still see 'check for updates' under help menu. I am getting that stupid popup saying

You are opening the application “Microsoft AutoUpdate.app” for the first time. Are you sure you want to open this application?

<?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">
<array> <dict> <key>attributeSetting</key> <integer>0</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>com.microsoft.outlook</string> </dict> <dict> <key>attributeSetting</key> <integer>0</integer> <key>choiceAttribute</key> <string>selected</string> <key>choiceIdentifier</key> <string>com.microsoft.autoupdate</string> </dict> </array>
</plist>

Like
SOLVED Posted: by tcandela

I think it might be from my Office 2011 installation. I installed office 2011 but I'm guessing it left mau2.0

going to test again.

Like