On Thu, Jun 07, 2018 at 10:57:54PM +0200, Bill Allombert wrote:
> On Thu, Jun 07, 2018 at 09:57:51AM -0700, Julian Andres Klode wrote:
> > > Are you sure the upgrade failure are not caused by another patch that it
> > > applied by ubuntu ?
> > 
> > Reasonably.
> > 
> > > I have yet to see a single upgrade failure in Debian proper.
> > 
> > It's still broken. Let's say you have foo shipping a menu file, and an 
> > upgrade for
> > menu. APT might schedule it like this:
> > 
> >     unpack foo
> >     unpack menu
> >     configure foo
> 
> So ? If menu is not configured, then update-menus is not executable, so
> test -x update-menus return false.

So? The file trigger gets activated by the package being installed, so:

  unpack foo
  unpack menu
  <dpkg tries to run trigger for foo>

And dpkg then fails because menu is not configured. Though, I don't know,
maybe it only fails if a dependency of menu is not configured, like in
the bug report:

dpkg: dependency problems prevent processing triggers for menu:
 menu depends on libstdc++6 (>= 4.6); however:
  Package libstdc++6:amd64 is not configured yet.


here the following was scheduled:

        unpack libstdc++6
        unpack <package with menu file>
        configure <package with menu file>

now, what actually happened is that dpkg failed before it got to run
the maintainer script for <package with menu file> because it ran the
triggers for menu, but menu triggers were not allowed to run because
libstdc++6 was not configured yet, aka:

        unpack libstdc++6
        unpack <package with menu file>
        ...
        ***trigger menu***
        configure <package with menu file>

with -noawait, this becomes:

        unpack libstdc++6
        unpack <package with menu file>
        ...
        configure <package with menu file>
        ...
        trigger menu

if we're lucky, menu only gets triggered once (well, plus the postinst
snippet)

-- 
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer                              i speak de, en

Reply via email to