Re: FAQ: Essential vs. Required
On Thu, 7 Aug 2003, Osamu Aoki wrote:
> On Sun, Aug 03, 2003 at 12:11:37PM +0200, Santiago Vila wrote:
> > In some sense, "required and essential" is like a priority over
> > "just required" (expect that you can have a package of extra priority
> > having the essential flag if it conflicts and replaces an essential package).
> ??? extra priority with essential ??? I do not understand.
Essential is a flag, not a priority (that's why I said that it was
only *like* a priority). They are orthogonal things, but due to the rule
saying packages which conflict with others of optional or higher priorities
should be extra, essential packages are either required or extra.
Imagine an e2fsprogs-cvs package which conflicts and replaces the
normal e2fsprogs package. It should be extra, but if you install
e2fsprogs-cvs to replace e2fsprogs, you should still be unable to
remove e2fsprogs-cvs unless you use dpkg's --force-remove-essential
option. So, a package like e2fsprogs-cvs should still be essential: yes
to prevent its removal the same way e2fsprogs does.
> "Essential: yes" means that this package
> +requires to specify an extra force option to the package management
> +system such as <prgn>dpkg</prgn> when removing from the system. For
> +example, <package>libc6</package>, <package>mawk</package>, and
> +<package>makedev</package> are "Priority: required" and "Section: base"
> +but are not "Essential: yes".
However, you still need a --force-depends to remove libc6, which is
still "an extra force option", so the example is not very clear.
I would choose here more examples like makedev instead of libc6 and mawk.