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

Re: Bug#1108193: apt: Ordering issue with libc6:i386 on amd64-m-a system breaks partial upgrade ("just apt and dpkg") from bookworm to trixie



Hi Chris, David, Julian and release team,

On Sun, Jun 22, 2025 at 09:26:23PM +0200, Chris Hofstädtler wrote:
> today I tried upgrading my "whatever" machine from bookworm to 
> trixie. As old habits die hard, I tried a partial upgrade (apt 
> install apt dpkg) before the full dist-upgrade. That was 
> semi-catastrophic - as it ended with:
> 
> Unpacking libc6:amd64 (2.41-8) over (2.36-9+deb12u12) ...
> dpkg: error processing package libc6:amd64 (--configure):
>  package libc6:amd64 2.41-8 cannot be configured because libc6:i386 is at a different version (2.36-9+deb12u12)
> Errors were encountered while processing:
>  libc6:amd64
> 
> And then anything that I tried with apt upgrade / install 
> --fix-broken did not help.
> 
> 
> Attached is a reproducer using mmdebstrap. The package list is not 
> exactly the same as on the original system, but it shows the same 
> problem.

I slightly reduced the reproducer to:

mmdebstrap --variant=apt --architectures=amd64,i386 --include=systemd-timesyncd,libc6-dbg:i386 --chrooted-customize-hook='sed -i -e s/bookworm/trixie/ /etc/apt/sources.list && apt update && apt-get -y install apt' bookworm /dev/null

In particular, it doesn't reproduce if you replace systemd-timesyncd
with its dependencies libc6,libsystemd-shared,systemd. At that point
Chris observed that systemd-timesyncd declares Conflicts: systemd (<<
trixie). In theory, those should have been Breaks+Replaces, but they
were upgraded to Conflicts due to the /usr-move for mitigating
ineffective Replaces. Back when those were added, I recommended that
systemd does not use Conflicts and rather uses protective diversions.

Even if we may agree that this is an apt bug, it feels very unlikely
that it ends up being fixed (in bookworm) in a meaningful way. I intend
look into the systemd side of things as part of my /usr-move work.

Helmut


Reply to: