On Jan 2, 2009, at 2:13 PM, Benjamin Reed wrote:

Also, Apple's built-in installer package management is only an
installer, not a package manager.  It has no intelligence as to what
happens after things get installed (other than writing a manifest of
what it did, completely oblivious to whether it overwrote things in
other packages' manifests, etc.)

It's not exactly rigourous, but Puppet has a decent table of features we use in package managers and which package types support what features (the table is all autogenerated based on what's implemented internally):

http://www.reductivelabs.com/trac/puppet/wiki/TypeReference#package

Notice that the Apple packaging type is the only one with only one feature (installable). It's missing basic stuff like 'uninstallable'. And even knowing that a package is installed requires checking for a given file or directory, rather than using cli tools.

Now, I know and care nothing about the packaging *format*, because I'm really only ever going to use the CLI or API, but to have a packaging type that has no tools for uninstalling, querying package state, or listing files? Ridiculous.

The crazy thing is that Apple even shipped with this crap, IMO. Here I thought Leopard was going to "fix" this, but I should have known the fix would be akin to HFS+: make something that sucks slightly less sucky, rather than making something good.

--
"They called me mad, and I called them mad, and damn them, they
outvoted me." -- Nathaniel Lee, on being consigned to a mental
institution, circa 17th c.
---------------------------------------------------------------------
Luke Kanies | http://reductivelabs.com | http://madstop.com

Reply via email to