implemented features (Re: Decision time....)
jfrazer at ieee.org
Wed Jun 6 13:08:54 PDT 2007
> A good package management system is safe and doesn't require the user to
> be an expert at package management systems.
I agree. Actually, I think both the package management and installer
share a similar problem. The problem is in abstracting the complex nature
of both of these tasks -- for the sake of user sanity the abstraction has
to be able to make wise choices (which they only sometimes do), while
dealing with a giant list of problems that can arise.
Take for example someone installing on a system that has multiple HD's and
multiple OS's already installed -- in such a situation it is difficult to
help an inexperienced user without falling back on the technical nature of
the problem: choosing disks, partitioning, etc. They might think "I just
want this to install, and hold-my-hand-linux didn't require me to do any
of this" and to them all this other crap is just there to get in their
And worst case scenario is when a magic-easy-script-or-ui fails and leaves
the inexperienced user with a broken or inconsistent system -- which can
/only/ then be fixed by the more advanced/expert tools.
I am reminded of sysinstall's detect x-settings feature -- I don't think
that has ever worked for me, and usually locked up my system -- has that
ever worked for anyone? For a first time user that can be so scary they
might give up and never come back again. If you can't do something right
99.9% of the time, then you shouldn't do it at all.
On the latest FreeBSD release I had a problem with the installer that
caused an explosion of out of inode messages -- it was a completely
vanilla install, default choices, etc. It was either a bug or sysinstall
was choosing a root fs size that was too small (although it seemed a
fine size to me). These kinds of problems should never happen.
Another example is a package upgrader that fails in the middle of an
upgrade, leaving half the system unfinished, and not being smart enough to
offer the logical fallback solution to the user: switch back to the old
packages. Why should the user have to read six man pages and 14 internet
sites to find out that the upgrade program hid the old packages in some
esoteric directory -- and that he/she must now fix the problem manually
To me, it seems only fair that if you provide an easy path into a giant
pile of crap, at least a little effort should be placed in providing an
easy path out of it.
These kinds of things are user nightmares, even for experienced users that
have an idea what's going on. Having to reinstall the OS or packages from
scratch is a lame solution, albeit sometimes the only effective
And I'm suspicious that many of these problems are caused by kludgy old
stop-gap abstractions that somehow became so entrenched in our philosophy
of 'how to do things' that there can be no end to the madness without
throwing them out the window and starting from scratch. In this respect I
think DragonFly is doing a good job (eg: dropping sysinstall, etc).
More information about the Kernel