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.

Reply via email to