Commit Graph

6 Commits

Author SHA1 Message Date
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 012c41674d munkilib.py: fixed default ManifestURL and SoftwareRepo URL
removepackages.py: better output capture when calling `lsbom`
installcheck: better output capture when calling `softwareupdate`
		Now creates catalogs dir in ManagedInstallDir if it's missing
managedinstaller: better output capture when calling `installer`




git-svn-id: http://munki.googlecode.com/svn/trunk@99 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-28 21:30:38 +00:00
Greg Neagle ad8c6abe13 Changed preference keys in ManagedInstalls.plist to be more Apple-like (managed_install_dir becomes ManagedInstallDir, and similar).
munkilib now uses Foundation/NSDictionary methods to read /Library/Preferences/ManagedInstalls.plist in case the plist gets converted to binary (for example, if it was modified using the defaults command).

Added support for Software Update downloads that aren't .pkgs, or .mpkgs, but rather directories containing ".dist" files.

installcheck now uses the values of LastNotifiedDate and DaysBetweenNotifications in ManagedInstalls.plist to throttle  Managed Software Update.app notifications. The default behavior is to notify no more than once a day.



git-svn-id: http://munki.googlecode.com/svn/trunk@93 a4e17f2e-e282-11dd-95e1-755cbddbdd66
2009-05-27 18:31:06 +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