You cannot use DMGs downloaded from a vendor "as is" and upload to Casper Admin and expect it to work. The DMG format for Casper is, for all intents and purposes, a proprietary Casper only format. It uses a file structure that mimics the folder structure on the target system to know where the files should land during the install process.
For FlashPlayer, your best bet is to drill down into the pkg (Control click on it, choose "Show Contents") and navigate to /Contents/Resources/ and grab the "Adobe Flash Player.pkg" installer and use that.
Keep in mind the pkg has a postflight script in it that may or may not work properly when just deployed as is via Casper. We've had mixed results when doing it this way.
Also, the recent 11.3.x update Adobe released finally added the silent auto update feature Adobe introduced in the Windows version some months back. We're still debating here whether we want to allow this mechanism to run and auto update our clients or if we need to have control over it. Its a double edged sword - on one hand it would be really nice to let Flash update itself since its a PITA to keep on top of it. On the other hand, allowing Adobe to manage the update process on our Macs isn't the most comfortable situation for us.
We're looking at possibly disabling the LaunchDaemon that gets installed and then manually calling the new "fpsaud" executable that gets installed in /Library/Application Support/Adobe/Flash Player Install Manager/ That way we can use the official auto update process Adobe introduced, but still call it on our own when we want. No more packaging Flash player with that method, which sounds like the best overall plan.
i use the luggage to automate downloading the latest version and packing it up.
example here: https://github.com/rockpapergoat/luggage/tree/master/flashplayer
otherwise, you should be able to drop this pkg into your casper repository, and it should work: Install Adobe Flash Player.app/Contents/Resources/Adobe Flash Player.pkg
I do what rockpapergoat mentioned above, extract the Flash Player.pkg. Then I rename it with version number for my use only, and send that out.
Thank you rockpapergoat for your suggestion to use luggage. For this issue it might be overkill, but I've captured the link for possible use later...
mm2270 and CasperSally thanks for widdling down to the barest essentials. the Flash Player.pkg yanked from Contents/Resources after Control-Clicking/Show Package Contents and just dropped that into Casper Admin.app, indexed it and saved it- got the package available in Remote. Deployed it just fine.
Now all I need to figure out is how to disable the FlashPlayerSoftwareAutoUpdateDaemon (fpsaud) now residing in /Library/Application Support/Adobe/Flash Player Install Manager!
I tried to force it to run by removing the new internet plugin with an older version hoping it would see it and say Hey! there's a newer version! I need to see what goes on with it. Is there a way to get the daemon to find an update to install?
I tried to force it to run by removing the new internet plugin with an older version hoping it would see it and say Hey! there's a newer version! I need to see what goes on with it. Is there a way to get the daemon to find an update to install?
i haven't figured that piece out yet. In initial testing it hasn't worked for me either. But then I remembered that Adobe also introduced sandboxing and other security measures in the 11.3 release so its possible this executable can't actually be called outside of the LaunchDaemon at /Library/LaunchDaemons/com.adobe.fpsaud.plist
As for disabling the auto update, I'm not 100% sure, but i think just disabling the LaunchDaemon should take care of it, because the daemon is what calls it once a day.
sudo launchctl unload -w /Library/LaunchDaemons/com.adobe.fpsaud.plist
Again, not tested yet and I likely won't get around to that anytime soon, so give that a try and see if it works.
I guess I need to find-out how to kick-start the daemon to see what it does when it works so when I disable (unload) it, I can see tha it doesn't... work : }
@CasperSally That's our process whenever we have a 3rd party PKG installer that we validate (ie: doesn't blow up our LAB); we use Vendor_Application_Version.pkg.
@gspiese Here's an interesting nugget:
http://arstechnica.com/civis/viewtopic.php?f=3&t=1176065&start=0&mode=reply
> The updater will use a launch daemon to check for updates every day.
Really? From what I know from /Library/LaunchDaemons/com.adobe.fpsaud.plist it seems that this auto updater starts every 3600 seconds.
@Don, actually my understanding was that it is set to run every 3600 seconds, but once it receives a "no updates found" back from the mothership, it sleeps until the next day, than runs again. I'm not sure if that's actually what its doing, but that's what I read about somewhere.
Package Adobe Flash Player 11 with auto update disabled
1.) Create a folder in /private/tmp called Flash
2.) Mount the DMG > Right-click Install Adobe Flash Player > Show Package Contents > Copy the "Contents" folder into this folder
3.) Disable auto-update notification
* Create or open the mms.cfg file in a text editor.
Add the following auto-update setting:
AutoUpdateDisable=1
* Save the mms.cfg file with UTF-8 encoding to Desktop.
* Copy the mms.cfg file to /private/tmp/Flash folder
More info about auto update disable feature;
http://helpx.adobe.com/flash-player/kb/administration-configure-auto-update-notification.html
4.) Drag this /private/tmp/Flash folder into Composer, in preparation of creating an installer pkg from it
5.) Change permissions to root and wheel as below
$ sudo chown -R root:wheel /private/tmp/Flash/mms.cfg
$ sudo chmod 644 /private/tmp/Flash/mms.cfg
6.) Create a postflight script with the following command:
#!/bin/sh
## postflight
pathToScript=$0
pathToPackage=$1
targetLocation=$2
targetVolume=$3
# Install Flash Player
installer -pkg "$3/private/tmp/Flash/Contents/Resources/Adobe Flash Player.pkg" -target LocalSystem
# Disable Automatic Updates
/usr/bin/ditto /private/tmp/Flash/mms.cfg "/Library/Application Support/Macromedia/"
exit 0 ## Success
exit 1 ## Failure
5.) Create a non-flat PKG.
All you crazy kids and your scripting, and I say that only because I'm terrible at it. Although this is good to know, and thank you for it, I'd just put the PKG directly in as prescribed, and then make a DMG of the mms.cfg file where it ultimately ends up already edited and install it with a higher priority. I always install Flash AFTER any Creative Suite installs and have the check boxes set for install on boot volume.
Always about 8 different ways to skin a Mac OS X cat I'd say...
I can't help but cringe when I see stuff like this...Adobe engineers who don't understand Windows paths vs Mac paths.
Heck, even if the slashes are in the wrong direction, could the engineer be farther off base with the location of that folder?!
external image link
Don
Yeah, I see that stuff all the time. Usually someone responsible for writing up docs that has knowledge only of Windows and zip knowledge of the Mac. And it should be labeled as "Mac OS X" or "OS X", not Macintosh (hardware) since everything else in that list is an OS.
Thanks Craig for hitting home the obvious. Sometimes its easy to get carried away with scripting when its not really necessary ;)
or even better
Install the Flash player normall and make the change to the /Library/Application Support/Macromedia/mms.cfg to read AutoUpdateDisable=1
Mount the install_flash_player_osx.dmg
Right click install Adobe Flash Player and select show package contents
Navigate to the Contents/Resources and drag Adobe Flash Player.pkg in to the sources pane of Composer
Drag the /Library/Application Support/Macromedia/mms.cfg in to the source you just created in Composer
6 Build it as a newly created (non-flat package) in Composer
I used composer to bundle flash 11.3.300.x using the preinstalled software and everything seems okay, except for some reason it keeps bundling my user folder. I looked in the policy and saw teh FUT/FEU was unchecked and greyed out, so I removed the pkg and re-added it and verified it had them checked.
I then saved the policy and re-edited it, and saw they were unchecked again.
I'm sure it's something stupid like you can't use a pkg with FEU/FUT...
before you make the package expand the file sections and remove your user directory, or maybe that is too simple and you have done that already.
I'm sure it's something stupid like you can't use a pkg with FEU/FUT...
Uh, yeah, you can't use FEU and FUT with a PKG install, only with a DMG.
If you plan to make it into a PKG, you'll need to delete the entire /Users/ folder path from Composer before building it. If you don't, when you deploy it to any Macs that don't actually have your home folder already on them, you'll get a basically empty home directory with just the folders/files captured in the package and nothing else. Not what you want.
i didnt remove it because I there was flash stuff in it? if I dont need it then I will remove it, but I've never really packaged flash before and didn't want to start randomly removing folders.
There's also a .PKInstallSandboxManager folder, it looks to be empty, can I delete it?
I've never seen it in any of my other pkg files
Empty folders can and do come up when using the Pre-Installed manifest option in Composer. Whenever I see them pop up with that method, I always remove them and have never had an issue with the pkg later on. That's not to say in some very rare cases removing it could cause issues with the install, but 99.9% of the time its OK to delete those empty directories.
But to back up a second, why are you using the Pre-Installed Manifest anyway? For the new FlashPlayer, it may not even work since the 11.3.300 adds new files and folders the manifest may not even be aware of, and therefore not capture. Read up further on this thread where its talked about pulling the pkg install buried inside the Flash Player installer application. That's going to be the better way to go here.
Are we sure there are no invisible files in that folder? The folder starts with a DOT (".") so it shouldn't be a problem, should it?
@mm2270 I tried that method, didn't seem to work for me, it didn't seem like the script ran at the end or something...
@jwojda - I'm not sure why that would be, but I can pretty much assure you using the Pre-Installed Software method isn't going to capture all the new files. I tested this today after I posted to be sure. Downloaded the latest manifests from JAMF into Composer, tried it and it didn't capture the new fpsaud file, the new LaunchDaemon and a few other things. The diff file hasn't been updated yet and isn't aware of all the new components. The description from Composer-
"This package manifest was tested with Adobe Flash Player 10.0.45.2 on Mac oS X 10.6.3 on 5/19/2010"
Its waaaay out of date. You're not going to get good results using that method with Flash Player 11.3.x. Just sayin'
all my installers are pkg format generated by the luggage. i don't use any dmg container formatted "packages" from composer (except for legacy stuff that's still around and not broken). i simulate casper's "FEU" function with post flight actions like this:
https://gist.github.com/3020305
do something similar if it's helpful to you.
Uh, yeah, you can't use FEU and FUT with a PKG install, only with a DMG.
@mm2270 @rockpapergoat Along with Nate's excellent script, another option to FEU and FUT on PKG format packages is a simple script that we created with help from the JAMF Nation list members...lets you FUT and FEU when using PKG format packages. Quite honestly we never, ever use DMG format packages (only Casper can use DMG packages; we need our packages to be usable by Help Desk, On Site Support, Advanced Support, etc.):
https://jamfnation.jamfsoftware.com/discussion.html?id=11