Commit Graph

15 Commits

Author SHA1 Message Date
Greg Neagle
fce4f6fab2 Added a check for diskimages with Software License Agreements. These cannot be automatically mounted by hdiutil, so they are useless to munki.
git-svn-id: http://munki.googlecode.com/svn/trunk@295 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-23 22:58:56 +00:00
Greg Neagle
660a8a8e98 Added support for "appdmg" package type. This is a dmg that contains a single application at the root of the mounted dmg, which is then copied to /Applications (for install) or simply rm -rf /Applications/appname (for removal).
makepkginfo generates pkginfo files for this package type, and updatecheck.py and installer.py have the appropriate additions.

git-svn-id: http://munki.googlecode.com/svn/trunk@279 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-22 21:42:57 +00:00
Greg Neagle
c88108f207 Merged makeadobepkginfo and makepkginfo.
git-svn-id: http://munki.googlecode.com/svn/trunk@275 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-21 18:55:21 +00:00
Greg Neagle
f8b28a05fb makepkginfo can now be called with only -f arguments, and no actual install item. This generates a list of filesystem items which can by manually added to the 'installs' key of a pkginfo item.
git-svn-id: http://munki.googlecode.com/svn/trunk@266 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-10-20 23:37:46 +00:00
Greg Neagle
4872ce7776 Removed commented out lines as part of a general cleanup.
git-svn-id: http://munki.googlecode.com/svn/trunk@214 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-09-17 00:01:37 +00:00
Greg Neagle
75a1f96f9f Changed from #!/usr/bin/env python to #!/usr/bin/python because we need to use Apple's installed Python, and not whatever python the user happens to be using...
Added support for CFBundleVersion when CFBundleShortVersionString is missing.

git-svn-id: http://munki.googlecode.com/svn/trunk@209 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-09-14 16:51:32 +00:00
Greg Neagle
445962ec20 Updated makepkginfo to use munkilib/FoundationPlist.py instead of plistlib.
git-svn-id: http://munki.googlecode.com/svn/trunk@174 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-08-20 17:56:12 +00:00
Greg Neagle
423c31340d Lots of replacing of plistlib.readPlist() with munikcommon.readPlist() so we can handle binary plists.
More fixes for JAMF Composer-generated packages.

git-svn-id: http://munki.googlecode.com/svn/trunk@150 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-31 16:34:02 +00:00
Greg Neagle
dc30a741f8 Print error message if no valid installer item is found on a disk image, and if we can't extract info from .pkg or .mpkg items. Fix for http://code.google.com/p/munki/issues/detail?id=1
git-svn-id: http://munki.googlecode.com/svn/trunk@146 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-31 14:34:25 +00:00
Greg Neagle
07cfc5235c Moved all support libraries into munkilib package.
Combined installcheck and managedinstaller into managedsoftwareupdate to avoid race conditions between the two tools.
Removed support for Apple Software Updates (because it didn't work correctly!)


git-svn-id: http://munki.googlecode.com/svn/trunk@112 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-14 18:04:34 +00:00
Greg Neagle
07fc86c9d7 munkilib.py:
- changes to pythonScriptRunning() to allow the tools to detect if another instance of themselves is running
- updated getBundlePackageInfo() to handle pre-dist style .mpkgs

removepackages.py:
- changes to handle multiple receipts with the same packageid

installcheck:
- removed random sleep option - this will move to another tool so we don't have installcheck itself sleeping; this prevented the other tools from running if you happened to, say, call managedinstaller while installcheck was sleeping.
- installcheck checks to see if another instance of itself is running and exits if so
- suppress errors when getting the primary manifest and trying long hostname, then short hostname, then "site_default".

makecatalogs:
- don't try to process ._ files or .DS_Store files.

makepkginfo:
- try to generate a better installer_item_location if the path has "/pkgs" in it




git-svn-id: http://munki.googlecode.com/svn/trunk@110 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-07-09 06:13:01 +00:00
Greg Neagle
c435d139ba munkilib.py:
Workaround for broken ScriptingBridge to SystemConfiguration in an unreleased OS version.
removepackages.py: 
for an unreleased OS version, no longer manipulate the Apple receipts DB using sqlite3, but instead just use pkgutil (and other related changes)
munkistatus.py: 
munkistatus.message() now clears the detail field.
managedinstaller: 
removed explicit clearing of munkistatus detail
makecatalogs: 
more progress and error reporting when building catalogs
makepkginfo: 
add default catalogs, uninstallable, and uninstall_method info to dictionary



git-svn-id: http://munki.googlecode.com/svn/trunk@104 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-06-24 04:58:17 +00:00
Greg Neagle
82ad48c60e Added support for installcheck and managedinstaller to handle Apple Software Updates.
Moved some functions from makepkginfo to munkilib so installcheck could use them.
Added checking to installcheck, managedinstaller, and removepackages.py so they warn and exit if run by a non-root user.
Added checks to installcheck and mamangedinstaller so that they exit if the other is running.


git-svn-id: http://munki.googlecode.com/svn/trunk@87 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-22 19:05:57 +00:00
Greg Neagle
9ab12d5a8f Renamed managedinstalls.py to munkilib.py.
Removed cfconsoleuser.py. Its function was added to munkilib.py.
Renamed ManagedInstaller to managedinstaller.py. Next commit it will be renamed to managedinstaller.
Renamed removepackages to removepackages.py
Refactored removepackages.py so it can be called as a Python module as well as a command-line tool.
managedinstaller.py now calls removepackages.py as a module instead of as a subprocess.
Cleaned up globals in installcheck, managedinstaller, and removepackages.
Removed bad copyright info from makcatalogs.


git-svn-id: http://munki.googlecode.com/svn/trunk@74 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-20 16:34:17 +00:00
Greg Neagle
59f69cf162 Major rewrite and refactoring of the core tools.
installcheck replaces catalogcheck.py.  installcheck supports the new catalog format and the new dependencies.  Cleaned up output and logging.
ManagedInstaller and removepackages tweaked for better logging and MunkiStatus output.
Removed the logout hook examples (for now)
makecatalogitem is now makepkginfo
New makecatalogs tool.

git-svn-id: http://munki.googlecode.com/svn/trunk@50 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-11 18:03:40 +00:00