ke 27. maalisk. 2024 klo 14.00 Andrey Rakhmatullin (w...@debian.org) kirjoitti: > > On Wed, Mar 27, 2024 at 01:29:50PM +0200, Martin-Éric Racine wrote: > > > The documentation from deb-control(5) is: > > > > > > Protected: yes|no > > > This field is usually only needed when the answer is yes. It denotes > > > a package that is required mostly for proper booting of the system or > > > used for custom system-local meta-packages. dpkg(1) or any other > > > installation tool will not allow a Protected package to be removed (at > > > least not without using one of the force options). > > > > > > It's probably also worth noting the parenthetical comment in the > > > documentation of Essential: > > > > > > Essential: yes|no > > > This field is usually only needed when the answer is yes. It denotes > > > a package that is required for the packaging system, for proper > > > operation of the system in general or during boot (although the latter > > > should be converted to Protected field instead). dpkg(1) or any other > > > installation tool will not allow an Essential package to be removed > > > (at least not without using one of the force options). > > > > I'm still not sure that I inderstand the difference between those two. > > They seem to accomplish the same thing. Did I miss something? > Per my understanding which may be flawed: > > "Essential: yes" are always installed. Tools and dependencies assume they > are installed. Bootstrapping tools install them implicitly. Package > management tools refuse to remove them. > > "Protected: yes" are nothing like that. Package management tools refuse to > remove them and that's all.
Thanks. This sounds much clearer already. In that case, the above deb-control(5) needs a much better phrasing. Something like: Protected: yes|no This field prevents a package from getting auto-removed by dpkg without using one of the force options. It is intended for custom local packages not meant for upload to the Debian repository. Essential: yes|no This field prevents a package from getting auto-removed by dpkg without using one of the force options. It also makes debootstrap and other similar tools force-install them. Maintainers must request approval from the debian-devel mailing list before uploading any package with the Essential field set to the Debian repository. See Essential packages (Section 3.8) in the Debian Policy Manual for details. Martin-Éric