TBH I personally think clever conditional logic in the package install for
  if (systemd installed) { systemd scripts, sysvinit scripts get
diverted to /dev/null }
  elsif (sysvinit for real) { install sysvinit scripts, divert systemd
scripts to /dev/null }
  else { print that you're doing neither of the above b/c the world is
confusing }
would be my default idea, but that seems like a lot of moving parts
where just breaking things out has many fewer things to go wrong, and
has precedent in fanning out into e.g. zfs-initramfs, zfs-test,
zfs-zed...

Also, while I support the idea of permitting sysvinit scripts to be
used for some users, I think "just" adding a Conflicts: systemd-sysv
anywhere but in an optional part of the packaging would be a drastic
user experience problem - they'd just get a sudden prompt to rip out
part of their system (a part that popcon suggests over 50% have
installed, and 42% have used parts of recently, in the case of
insserv) on trying to upgrade a minor version.

- Rich

On Tue, Jan 1, 2019 at 2:22 PM Richard Laager <rlaa...@wiktel.com> wrote:
>
> On 12/31/18 6:34 PM, Rich wrote:
> > It seems like what we might want is an OR dependency on two child
> > zfs-{systemd,sysvinit} packages - and for those two packages to
> > conflict with each other (and require the appropriate respective init
> > packages)?
>
> I don't think that's desirable. If this is actually required, then
> wouldn't every package trying to support systemd and sysvinit need to do
> that same? That would be a lot of work. No other packages are doing
> this; there should be some other solution.
>
> If systemd-sysv and insserv are not co-installable, that conflict should
> be expressed in those packages.
>
> --
> Richard

Reply via email to