Maxime Devos writes: > [[PGP Signed Part:Undecided]] > > On 30-08-2022 09:59, muradm wrote: >> >> Hello, >> >> basu is sd-bus library extracted from systemd. >> >> Currently, there are two packages depending on it, >> which are mako and grimshot. >> >> In https://debbugs.gnu.org/cgi/bugreport.cgi?bug=56859, >> I suggest switching xdg-desktop-portal-wlr to basu. >> >> In very same issue, Maxime asks to discuss switching >> _all_ dependents of elogind to basu. >> >> [1] Some elogind dependents, like wireplumber, as per >> code depends on sd-login.h also in module-logind.c. >> While I have wireplumber-without-elogind locally, >> I don't propose switching it basu, because someone >> may want module-logind.c to work. >> >> [2] Currently there are 1461 packages depend on elogind. >> First, all of them should be analyzed if they do use >> sd-bus only, those can be switched to basu. Then >> those using more than sd-bus should be analyzed if >> elogind is missing would their functionality be hurt. > If these problems are like [1], then IIUC these problems would > manifest as build errors. Checking for build errors is > relatively > simple by pushing to a separate branch first, evaluating it on > ci.guix.gnu.org and checking for new build failures. Not necessarily, simple ifdef or alike will silently drop anticipiated functionality. Software will build without errors but functionality expected by users might be missing. >> Because of [1] and [2], I find it not feasible/not >> possible to blindly switch _all_ dependents from >> elogind to basu. >> >> Do I miss anything else here? > > IIUC, everything using basu also works fine with elogind (*), so > the > 'status quo' of still using elogind (for old and new) seems > harmless > to me (except for size -- basu is smaller). I don't find the "everything using basu also works fine with elogind" statement/assumption/guess correct, as per contents of elogind and basu. See above comment for ifdef thingy. > > As far as I know, the benefit of 'basu' is using less storage > (**).  > If most dependents are switched from elogind to basu, then this > benefit can be fulfilled. But if we just do a mix of elogind and > basu, > then we have both elogind and basu in the store, _increasing_ > the > storage footprint instead of lowering, which is the opposite of > the > goal of lowering storage usage. > > As such, assuming that lowering the storage footprint was your > reason > for switching to basu, I think we should either try switching > _all_ > packages to basu or keep using elogind and add elogind instead > of basu > to new dependents. > My intention is not to have something that is not used. Roughly, if elogind is not used, why should I have it on my system. Basically, elogind provides: elogind, loginctl, busctl, libelogind (sd-bus, sd-login ...) ... basu provides: busctl, libbasu If basu is enought for package it should dependen on basu IMHO. So my reason is not directly-storage-only, but dependency which impacts storage in some or another way. Btw, how much storage are we talking about when having some packages depend on elogind and some on basu? Is it user storage or build server/substitute storage concern? > Greetings, > Maxime > > (*) This is an unverified guess. If disproved, my reasoning > becomes a > lot weaker. > (**) This is just a guess about what your goal was, maybe you > had a > different reason in mind. E.g., basu seems to be more active > than > elogind. > > [2. OpenPGP public key --- application/pgp-keys; > OpenPGP_0x49E3EE22191725EE.asc]... > > [[End of PGP Signed Part]] Thanks in advance, muradm