[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: If we're Going to Have Alternate Init Systems, we need to Understand Apt Dependencies



Hi,

On Wed, Dec 04, 2019 at 10:24:40PM +0500, Andrey Rahmatullin wrote:

> > One of the options I had in my original proposal was that we could drop the
> > requirement for transitions through apt, and instead provide transition
> > scripts that use dpkg's --force options to go through an invalid state
> > instead of requiring all intermediate states to be valid.

> I think apt already does that sometimes?

Yes, but as far as I've understood that is a different resolver than the
regular dependency solver.

The regular solver avoids including operations in the solution that require
too many follow-up operations to get back into a valid state, because
searching the solution space there takes a long time. The aptitude resolver
can do that, but it can go into a state where it needs to make a lot of
attempts to find a solution.

This is what I described in my earlier mail to -devel about libgtk pulling
in systemd-sysv through dbus-user-session. The alternative using dbus-x11
exists, but the regular apt resolver doesn't find it, while aptitude does
after about thirty seconds.

The resolver that avoids dpkg errors reorders operations to remove invalid
states, and when it finds that it cannot avoid going through one, it
grumbles and does so -- which is why once you give apt the solution "maybe
if you install dbus-x11", it will come up with a working plan.

> > I'd be in favour of always including units along with init scripts, ideally
> > as a strong requirement so we can disable the init script compatibility
> > layer in systemd, and the same for cron files and timer units.

> The relevant policy bug is #941198.

I see no problem with going forward with this change, because it is not
going to be affected by GR outcome. We want to be able to have systemd unit
files for services in any case.

   Simon


Reply to: