* master:
More localization fixes.
Localization fix for the message: 'A restart is required after updating. Please be patient as there may be a short delay at the login window. Log out and update now?'
Updated Swedish localization by peter.wreiber@gmail.com
Track whether an update was installed in "only_unattended" mode or not in InstallResults, for additional reporting on various Munki servers.
updated spanish strings for consistency
Change application data collection code so that system_profiler SPApplicationsDataType is called only once per Munki session, even if system_profiler fails or hangs.
Remove -d option from munkiimport as it conflicts with -d option to makepkginfo
Don't display 'Running installcheck_script/uninstallcheck_script for foo...' messages when checking for updates.
Support for installing AAMEE/CCP packages that include updates.
Fix "NameError: name 'report_broken_python' is not defined" crash when attempting to report a broken Python install. The file hasn't been parsed at this point, so the report_broken_python function is nonexistent.
Fix case where munkicommon.getAppBundleExecutable() returns None due to non-existent Info.plist, causing Munki to crash when parsing the None executable name.
Patch to adobeutils.py from Pepijn Bruienne <bruienne@gmail.com> to allow makepkginfo to properly parse an Adobe Creative Cloud product package built with Creative Cloud Packager.
Fix typo in French localization.
Updated French localization from Richard Lafontaine <iceman.grrrr@gmail.com>
Add Swedish localization from Peter Wreiber <peter.wreiber@gmail.com>
minor correction to the spanish translation
* master:
Fix makepkginfo --force_install_after_date to create a date object for the pkginfo plist instead of a string.
If a force_install_after_date install is near/past it's due date, logouthelper should be started (the machine should be forcefully rebooted) even if someone is logged in but the session is at the loginwindow (fast user switching). Force should not be "force unless x, y, z".
Add --repo_path and --repo_url options to munkiimport to allow the user to override the default repo_path and repo_url options set via munkiimport --configure at runtime
If we are about to do an install at the loginwindow, check to see if FileSyncAgent.app is running. This might be HomeSync running during a login process. If so, don't install.
Change apple_item logic in updatecheck.processRemoval to match that in updatecheck.processInstall. Specifically, allow admin to override detection of apple_item by explictly setting it in the pkginfo.
Update version.plist to 0.9.0 for next development round.
makepkginfo now accepts a mount point of a disk image (/Volumes/Disk Image). Mount point will resolve to a dmg file and that file will be used as an input item. Additionally -i/--itemname option takes absolute paths for easily defining items to be copied.
Using the new '--apple-update' option available in makepkginfo (and
therefore munkiimport), an admin can generate metadata pkginfo files
for Apple updates. Supported metadata keys will modify munki's
behavior of the specified Apple update offered to the client. Examples
would include 'force_install_after_date' and 'RestartAction'. The
'makecatalogs' utility has also been updated to allow for this new
installer_type when creating catalogs.
NOTE: Client-side implementation is not included in this commit. This
commit only deals with the creation of these specialized pkginfo files.
* makepkginfo with installer item - set minimum_os_version as detected
* makepkginfo with installer item and file item(s) - set minimum_os_version as detected
* makepkginfo with file item(s) only - do not provide minimum_os_version, regardless of what we detect
* makepkginfo with --minimum_os_version and any of the above options - set minimum_os_version to argument of --minimum_os_version, regardless of what we detect
This patch also sets flat packages to default to 10.5.0 (instead of 10.4.0 which is used for all other items) and requires that if --minimum_os_version is provided that it starts with a digit.
- hasValidPackageExt(), hasValidDiskImageExt() for the appropriate
extensions, and hasValidInstallerItemExt() to call them
- replace many checks to use the above
- munkiimport.py now uses munkicommon.isApplication() to do the
equivalent of checking endswith('.app')
- fix an errand merge ancestor from an old unrelated munkiimport
branch
Explicitly states that the "installs" item's path is modified such that
it includes the alternate name as opposed to the disk image item's
original name.
The previous addition of '--max-os-ver', '--min-os-ver', and
'--unattended-install' prompted this change to provide similar naming
conventions across all options.
Assuming that the installer_item is part of 'options' passed to 'def
makePkgInfo' simplifies the function as well as several other parts of
'munkiimport'; namely the removal of installer_item from the list of
arguments is no longer needed. Additional exit codes added to
--verify-options-only are interpreted by 'def makePkgInfo' testing mode.
Note that since the '/path/to/installer_item' could still be anywhere
within munkiimport options, it is essential to remove it from the
options list passed to 'makepkginfo' during pkginfo creation.