On 4/23/19 6:25 PM, Zac Medico wrote: > > Note that systemd.eclass is lighter on dependencies, which is why I > chose it for the solution to bug 490676 [1] and bug 643386 [2] in the > sys-apps/portage ebuilds. > > [1] https://bugs.gentoo.org/490676 > [2] https://bugs.gentoo.org/643386 >
I think that's an illusion. The two eclasses should really have the same dependencies because they do exactly the same thing. Obviously we don't want to pull in systemd when people inherit the systemd.eclass, so there are guards around every use of a systemd program, such as systemd_reenable() { type systemctl &>/dev/null || return 0 ... } Likewise, the only function in tmpfiles.eclass that uses a systemd or opentmpfiles program is tmpfiles_process() { ... if type systemd-tmpfiles &> /dev/null; then systemd-tmpfiles --create "$@" elif type tmpfiles &> /dev/null; then tmpfiles --create "$@" fi ... } which will still work (albeit with a warning) if you somehow manage not to have virtual/tmpfiles installed. So, if it's important, I think we could drop the RDEPEND="virtual/tmpfiles" from tmpfiles.eclass.