Package: base-passwd,base-files,debian-policy Debian policy section 3.8 says:
| Essential is defined as the minimal set of functionality that must be | available and usable on the system at all times, even when packages | are in the “Unpacked” state. When unpacking (but not configuring) a buster or unstable essential package set, nothing creates /etc/passwd. Creation of that file is performed by base-passwd.postinst. base-files.postinst relies on a working /etc/passwd by using e.g. "chown root:root". Now we can make a choice: A. /etc/passwd is part of base-passwd's interface and base-files is right in relying on it working at all times. Then base-passwd is rc buggy for violating a policy must. Fixing this violation is technically impossible. B. /etc/passwd is not part of base-passwd's interface and base-files wrongly relies on its presence rendering base-files rc buggy. C. Guillem Jover hinted that policy expects every essential package to be configured at least once. The current text does not make this assumption clear. If it holds, policy would simply say nothing about how to bootstrap an essential system, which may be fine. Given that we have debootstrap, cdebootstrap, multistrap, and mmdebstrap, it seems like specifying the bootstrap interface would be a good idea. Unfortunately, I don't exactly understand the bootstrap interface at present. In practise, you cannot run postinsts of essential packages in arbitrary order. I argue that something is buggy. I'm not sure what. I gave three options. Can we gather consensus on one of these? Helmut