On Mon, 25 Jul 2022 18:11:21 +0100 Mark Hindley <m...@hindley.org.uk> wrote: > Michael, > > Thanks for this. > > On Mon, Jul 25, 2022 at 04:08:28PM +0200, Michael Biebl wrote: > > Am 25.07.22 um 14:05 schrieb Mark Hindley: > > > > > It has been suggested that changing the dependency to > > > > > > systemd-standalone-tmpfiles | systemd-tmpfiles > > > > > > would help the packaging system usually find the correct solution and reduce the > > > number of unexpected surprises users are reporting. > > > > > > With this change, on a systemd installation the dependency would already be > > > satisfied and therefore noop for APT. > > > > This is not correct. It would make the bootstrap phase more brittle as > > outlined by ansgar. So this is certainly a no-go. > > I am afraid I can't find any detail of this beyond Ansgar's statement of this as > fact[1]. Could you point me to the evidence and rationale of this concern, > please?
It's very simple: the default is intentionally, and must remain, to install the systemd package to provide those utilities, because that's what gets the widest usage and the most testing. The alternatives are provided as a courtesy, as optional alternatives for non-default use cases, and are seldomly used and lightly tested. > > I hate to repeat myself: add a Recommends or Depends on > > systemd-standalone-tmpfiles to sysvinit-core to help apt choose the right > > solution for such non-standard configurations. > > I also hate to repeat myself, but sysvinit-core makes no use of tmpfiles, > therefore to add the dependency there would be incorrect and an abuse of the > packaging system. Dependencies can and are used to influence the behaviour of the installed system all the time, it is not true that there must always be a direct 1:1 mapping between a dependency and an artifact being directly used. We have metapackages all over the places after all. But even then, if you don't want that use a Recommends instead, or create a new meta-package that you own and sets the preferences as you see fit, or change the build scripts to use --include/--exclude, or have post- build processing scripts to change the list of installed packages, and so on. Or simply leave the systemd package installed, as by itself it does nothing given the init system is not changed by simply having it installed by itself, so there's no functional difference. -- Kind regards, Luca Boccassi
signature.asc
Description: This is a digitally signed message part