APT is not enough
APT is just part of the thing. Debian has been great and smoothly updatable
for many years... before apt was created. I'll list the things (from Debian)
that RedHat needs to make this work:
- The multi phase installation. Packages are unpacked and configured in
different steps.
- Maintainer scripts. Debian has a rich and well defined set of scripts a
package can provide in order to leave things configured. They stop and start
services, check the system, update files, etc.
- Strict policy. Debian packages are carefully made so as they work together.
There's a long policy document that specifies what should happen, how and
were, so: no suprises from that new package.
- Virtual packages. A package must be able to depend on certain "interface" or
capability being present in the system, without having to know which package
provides it. E.g.: if a package wants to send a mail, it will use the
tradicional /usr/sbin/sendmail interface, and depend on a package wich
provides mail-transport-agent.
- Drop file dependencies. They are dirty and evil, as everybody knows.
- All packages involved should be of high quality. There's nothing you can do
with all this measures that will stop a broken packages from giving trouble
to users.
- Several "subpolicies", so emacs, perl, sgml, etc. subsystems could work
together, trigering the registration, compilation, etc. of things when
packages are installed or removed.
- A way for competing packages to be installed, this is made in Debian with
alternatives and diversions.
- Config file handling. The system should never overwrite a config file. In
Debian, dpkg checks if the file has been modified since the package was
installed, and it will ask the user if the package wants to install a new
version. The user could then diff the files, edit, accept or reject the new
version.
A lot of work, perhaps several years... If these are the recognized goals of
a distribution, so we should drop everything and make Debian a standard..
=).