#1139149 apt: dist-upgrade keeps files back and no explanation given

Package:
apt
Source:
apt
Description:
commandline package manager
Submitter:
Helge Kreutzmann
Date:
2026-06-19 15:51:01 UTC
Severity:
normal
#1139149#5
Date:
2026-06-06 14:30:15 UTC
From:
To:
I recently (about two weeks ago) upgraded from stable to testing. I
noticed that quite a few files were not upgraded. I had two packages
pinned, which I unpinned, but no change.

If I explicitly select one of those files for install (apt install …)
then this is installed. However I don't want to do this for all files,
because then they become marked as automatically installed. (And
besides, this should not happen - either they get upgraded or removed,
but not hold back).

I tried to find out why these files are hold back, but to no avail.
Let's take an example:

cups-filters:amd64 is selected for install because:
1. cups:amd64 is selected for install
2. cups:amd64 Depends cups-filters

I tried various other command (list, show), but I could not determine
why these files are not install with dist-upgrade (nor upgrade).

My system is not using recommends by default, maybe this is (part of
the problem)?

I looked at the apt bugs to see if this has been reported. It may be
linked to #1119668, but I'm not sure. Should I maybe run those debug
commands (or others) to help finding the root cause?

Here is the full list (notice that this list grows, it was less than
90 initially).

root@twentytwo:~# LC_ALL=C apt update
Hit:1 http://127.0.0.1:9999/ftp.de.debian.org/debian forky InRelease
92 packages can be upgraded. Run 'apt list --upgradable' to see them.
root@twentytwo:~# LC_ALL=C apt upgrade
Not upgrading:
  cups-filters               libkf5kirigami2-5     libqt5multimediaquick5    libqt5quickwidgets5   libqt5waylandcompositor5  librust-block-buffer-dev   poppler-utils                      qml-module-qtquick-templates2
  cups-filters-core-drivers  libkf5waylandclient5  libqt5multimediawidgets5  libqt5script5         libqt5webchannel5         librust-crypto-common-dev  python3-pyqt5                      qml-module-qtquick-window2
  graphviz                   libkf5xmlgui5         libqt5network5t64         libqt5sensors5        libqt5webengine-data      librust-digest-dev         qdbus-qt5                          qml-module-qtquick2
  inkscape                   libkpim6itinerary6    libqt5networkauth5        libqt5serialport5     libqt5webengine5          librust-getrandom-dev      qml-module-org-kde-kirigami2       qml-module-qtwebengine
  kwayland-integration       libpoppler-glib8t64   libqt5positioning5        libqt5sql5-mysql      libqt5webenginecore5      librust-rand-core-dev      qml-module-qtgraphicaleffects      qt5-gtk-platformtheme
  libcurl3t64-gnutls         libpoppler-qt5-1t64   libqt5printsupport5t64    libqt5sql5-psql       libqt5webenginewidgets5   librust-sha2-dev           qml-module-qtmultimedia            qt5-image-formats-plugins
  libegl-mesa0               libpoppler-qt6-3t64   libqt5qml5                libqt5sql5-sqlite     libqt5widgets5t64         libselinux1                qml-module-qtqml                   qtspeech5-speechd-plugin
  libgbm1                    libqt5core5t64        libqt5qmlmodels5          libqt5sql5t64         libqt5x11extras5          libsemanage2               qml-module-qtquick-controls        qtwayland5
  libgl1-mesa-dri            libqt5dbus5t64        libqt5qmlworkerscript5    libqt5svg5            libqt5xdgiconloader3      mesa-libgallium            qml-module-qtquick-controls2
  libglx-mesa0               libqt5designer5       libqt5quick5              libqt5test5t64        libqt5xml5t64             node-jest-debbundle        qml-module-qtquick-dialogs
  libkf5i18nlocaledata5      libqt5gui5t64         libqt5quickcontrols2-5    libqt5texttospeech5   libqt5xmlpatterns5        pdf2djvu                   qml-module-qtquick-layouts
  libkf5iconthemes5          libqt5multimedia5     libqt5quicktemplates2-5   libqt5waylandclient5  librust-blobby-dev        pdfgrep                    qml-module-qtquick-privatewidgets

Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 92
root@twentytwo:~# LC_ALL=C apt dist-upgrade
Not upgrading:
  cups-filters               libkf5kirigami2-5     libqt5multimediaquick5    libqt5quickwidgets5   libqt5waylandcompositor5  librust-block-buffer-dev   poppler-utils                      qml-module-qtquick-templates2
  cups-filters-core-drivers  libkf5waylandclient5  libqt5multimediawidgets5  libqt5script5         libqt5webchannel5         librust-crypto-common-dev  python3-pyqt5                      qml-module-qtquick-window2
  graphviz                   libkf5xmlgui5         libqt5network5t64         libqt5sensors5        libqt5webengine-data      librust-digest-dev         qdbus-qt5                          qml-module-qtquick2
  inkscape                   libkpim6itinerary6    libqt5networkauth5        libqt5serialport5     libqt5webengine5          librust-getrandom-dev      qml-module-org-kde-kirigami2       qml-module-qtwebengine
  kwayland-integration       libpoppler-glib8t64   libqt5positioning5        libqt5sql5-mysql      libqt5webenginecore5      librust-rand-core-dev      qml-module-qtgraphicaleffects      qt5-gtk-platformtheme
  libcurl3t64-gnutls         libpoppler-qt5-1t64   libqt5printsupport5t64    libqt5sql5-psql       libqt5webenginewidgets5   librust-sha2-dev           qml-module-qtmultimedia            qt5-image-formats-plugins
  libegl-mesa0               libpoppler-qt6-3t64   libqt5qml5                libqt5sql5-sqlite     libqt5widgets5t64         libselinux1                qml-module-qtqml                   qtspeech5-speechd-plugin
  libgbm1                    libqt5core5t64        libqt5qmlmodels5          libqt5sql5t64         libqt5x11extras5          libsemanage2               qml-module-qtquick-controls        qtwayland5
  libgl1-mesa-dri            libqt5dbus5t64        libqt5qmlworkerscript5    libqt5svg5            libqt5xdgiconloader3      mesa-libgallium            qml-module-qtquick-controls2
  libglx-mesa0               libqt5designer5       libqt5quick5              libqt5test5t64        libqt5xml5t64             node-jest-debbundle        qml-module-qtquick-dialogs
  libkf5i18nlocaledata5      libqt5gui5t64         libqt5quickcontrols2-5    libqt5texttospeech5   libqt5xmlpatterns5        pdf2djvu                   qml-module-qtquick-layouts
  libkf5iconthemes5          libqt5multimedia5     libqt5quicktemplates2-5   libqt5waylandclient5  librust-blobby-dev        pdfgrep                    qml-module-qtquick-privatewidgets

Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 92

#1139149#10
Date:
2026-06-16 17:02:10 UTC
From:
To:
You'll want to specify -o Debug::APT::Solver=3 (or 2, or 1) to see the
reasoning as it goes along. In particular, you will easily find lines
with Reject: or Install: for the specific versions, say:

    Reject:cups-filters:amd64=<new version>

that will, in a terse way explain why the new version could not be
installed:

    Reject:name:arch=version (a->b->c)

    where "a->b->c" is an implication graph, and any may be negative,
    say "a->not b->c".

It is possible all these packages are being held back because they
require removing a manually installed package (so you'd see a rule like
manual package -> some package -> .... as the reason for the
cups-filters reject).

Unfortunately there is no clear way to indicate the reason why a package
is being held back at this time; passing the information out from the
solver to the frontend is non-trivial, and it would be quite complicated
to read.

Generally speaking, `why-not` and `why` cannot explain actions, only
installed state because the actions have not been queued (like "upgrade
all packages").

It would be interesting to have a command to ask

    apt why --command "dist-upgrade"  cups-filters/now

to ask it: "Why are you choosing to keep cups-filters at the current
version", but alas, I'm not sure how to implement that - the commands
act on different solver objects.

Similarly, you'd want to have a "?cups-filters/now" option at the prompt
to ask there but the solver object is proxied through a legacy depcache
API and already gone by the time we get to the prompt as it has applied
its changes.

We could store the entire reasoning graph in a thread-local global
object that the frontend could query to bypass the whole proper API.

Hopefully, we eventually get rid of the depcache and interface with the
solver API directly, and then we can query everything natively though.

#1139149#15
Date:
2026-06-16 17:56:17 UTC
From:
To:
Hello Julian,
thanks for the explanation and debugging hints.

Am Tue, Jun 16, 2026 at 07:02:10PM +0200 schrieb Julian Andres Klode:
install"), but most of the others are still there (and the set grows).

Let's take graphviz as an example now. I performe the "dist-upgrade"
with the "Solver=3". The entire output is 11 M (if you want, I can
provide this), but then grepping for graphviz yields:

Found dependency critical imagemagick-6.q16:amd64 -> graphviz:amd64
Try to keep satisfied: imagemagick-6.q16:amd64 Suggests graphviz
Found dependency critical imagemagick-7.q16:amd64 -> graphviz:amd64
Try to keep satisfied: imagemagick-7.q16:amd64 Suggests graphviz
Found dependency critical gimp:amd64 -> graphviz:amd64
Found dependency critical graphviz:amd64 -> libc6:amd64
Found dependency critical graphviz:amd64 -> fonts-liberation:amd64
Try to keep satisfied: graphviz:amd64 Recommends fonts-liberation
Found dependency critical graphviz:amd64 -> gsfonts:amd64
Try to keep satisfied: graphviz:amd64 Suggests gsfonts
Found dependency critical graphviz:amd64 -> graphviz-doc:amd64
Ignore unimportant clause: graphviz:amd64 Suggests graphviz-doc
Found dependency critical libgegl-0.4-0t64:amd64 -> graphviz:amd64
Try to keep satisfied: libgegl-0.4-0t64:amd64 Suggests graphviz
Found dependency critical graphviz:amd64=14.1.2-1+b1 -> libcgraph8:amd64
Found dependency critical graphviz:amd64=14.1.2-1+b1 -> libgvc7:amd64
Found dependency critical graphviz:amd64=14.1.2-1+b1 -> libgvpr2:amd64
Found dependency critical graphviz:amd64=14.1.2-1+b1 -> libgvplugin-gd8:amd64
Found dependency critical graphviz:amd64=14.1.2-1+b1 -> libgvplugin-pango8:amd64
Found dependency critical graphviz:amd64=14.1.2-1+b1 -> libgraphviz-dev:amd64
Found dependency critical graphviz:amd64=14.1.2-1+b1 -> graphviz-doc:amd64
Ignore unimportant clause: graphviz:amd64=14.1.2-1+b1 Suggests graphviz-doc
Found dependency critical graphviz:amd64=2.42.4-3 -> libann0:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libcdt5:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libcgraph6:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libexpat1:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libgcc-s1:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libgd3:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libglib2.0-0t64:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libgts-0.7-5t64:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libgvc6:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libgvpr2:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> liblab-gamut1:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libstdc++6:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libx11-6:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libxaw7:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libxmu6:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> libxt6t64:amd64
Found dependency critical graphviz:amd64=2.42.4-3 -> graphviz-doc:amd64
Ignore unimportant clause: graphviz:amd64=2.42.4-3 Suggests graphviz-doc
Found dependency critical gnustep-base-runtime:amd64 -> graphviz:amd64
Install graphviz:amd64 ()
Enqueuing Recommends (root) ->  | graphviz:amd64
Enqueuing Recommends (root) ->  | graphviz:amd64=14.1.2-1+b1 | graphviz:amd64=2.42.4-3
Found dependency critical quilt:amd64 -> graphviz:amd64
Try to keep satisfied: quilt:amd64 Suggests graphviz
Propagate gimp:amd64 to gimp:amd64 ->  | graphviz:amd64
[1384] Install:graphviz:amd64 (gimp:amd64)
Propagate graphviz:amd64 to graphviz:amd64 ->  | graphviz:amd64=14.1.2-1+b1 | graphviz:amd64=2.42.4-3
Propagate graphviz:amd64 to graphviz:amd64 ->  | libc6:amd64
Propagate graphviz:amd64 to graphviz:amd64 ->  | fonts-liberation:amd64
Enqueuing Recommends graphviz:amd64 ->  | fonts-liberation:amd64
Propagate graphviz:amd64 to graphviz:amd64 ->  | gsfonts:amd64
Enqueuing Recommends graphviz:amd64 ->  | gsfonts:amd64
Propagate graphviz:amd64 to graphviz:amd64 ->
Propagate libgegl-0.4-0t64:amd64 to libgegl-0.4-0t64:amd64 ->  | graphviz:amd64
Enqueuing Recommends libgegl-0.4-0t64:amd64 ->  | graphviz:amd64
Propagate imagemagick-7.q16:amd64 to imagemagick-7.q16:amd64 ->  | graphviz:amd64
Enqueuing Recommends imagemagick-7.q16:amd64 ->  | graphviz:amd64
Propagate imagemagick-6.q16:amd64 to imagemagick-6.q16:amd64 ->  | graphviz:amd64
Enqueuing Recommends imagemagick-6.q16:amd64 ->  | graphviz:amd64
Propagate not libgvplugin-gd8:amd64 to graphviz:amd64=14.1.2-1+b1 ->  | libgvplugin-gd8:amd64
[1662] Reject:graphviz:amd64=14.1.2-1+b1 (libgvc6:amd64 -> libgvc6:amd64=2.42.4-3 -> not libgvplugin-gd8:amd64)
Propagate not libgvplugin-pango8:amd64 to graphviz:amd64=14.1.2-1+b1 ->  | libgvplugin-pango8:amd64
Propagate not graphviz:amd64=14.1.2-1+b1 to graphviz:amd64 ->  | graphviz:amd64=14.1.2-1+b1 | graphviz:amd64=2.42.4-3
[1662] Install:graphviz:amd64=2.42.4-3 (gimp:amd64 -> graphviz:amd64)
Propagate not graphviz:amd64=14.1.2-1+b1 to libgvc7:amd64=14.1.2-1+b1 ->  | graphviz:amd64=14.1.2-1+b1
Propagate not graphviz:amd64=14.1.2-1+b1 to libgvplugin-gd8:amd64=14.1.2-1+b1 ->  | graphviz:amd64=14.1.2-1+b1
Propagate not graphviz:amd64=14.1.2-1+b1 to libgvplugin-pango8:amd64=14.1.2-1+b1 ->  | graphviz:amd64=14.1.2-1+b1
Propagate not graphviz:amd64=14.1.2-1+b1 to libxdot4:amd64=14.1.2-1+b1 ->  | graphviz:amd64=14.1.2-1+b1
Propagate not graphviz:amd64=14.1.2-1+b1 to (root) ->  | graphviz:amd64=14.1.2-1+b1 | graphviz:amd64=2.42.4-3
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=14.1.2-1+b1 ->  | graphviz:amd64=2.42.4-3
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | graphviz:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | graphviz:amd64=14.1.2-1+b1
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libann0:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libcdt5:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libcgraph6:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libexpat1:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libgcc-s1:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libgd3:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libglib2.0-0t64:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libgts-0.7-5t64:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libgvc6:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libgvpr2:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | liblab-gamut1:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libstdc++6:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libx11-6:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libxaw7:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libxmu6:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->  | libxt6t64:amd64
Propagate graphviz:amd64=2.42.4-3 to graphviz:amd64=2.42.4-3 ->
Propagate gnustep-base-runtime:amd64 to gnustep-base-runtime:amd64 ->  | graphviz:amd64
Propagate quilt:amd64 to quilt:amd64 ->  | graphviz:amd64
Enqueuing Recommends quilt:amd64 ->  | graphviz:amd64
ELIDED Item (2@1384) graphviz:amd64 ->  | graphviz:amd64=14.1.2-1+b1 | graphviz:amd64=2.42.4-3
ELIDED Optional Item (1@0) (root) ->  | graphviz:amd64
ELIDED Optional Item (2@0) (root) ->  | graphviz:amd64=14.1.2-1+b1 | graphviz:amd64=2.42.4-3
ELIDED Optional Item (1@1459) imagemagick-6.q16:amd64 ->  | graphviz:amd64
ELIDED Optional Item (1@1384) libgegl-0.4-0t64:amd64 ->  | graphviz:amd64
ELIDED Optional Item (1@1384) graphviz:amd64 ->  | gsfonts:amd64
ELIDED Optional Item (1@2573) quilt:amd64 ->  | graphviz:amd64
ELIDED Optional Item (1@1458) imagemagick-7.q16:amd64 ->  | graphviz:amd64
ELIDED Optional Item (1@1384) graphviz:amd64 ->  | fonts-liberation:amd64

However, I cannot really parse the „Reject“ line.

Does this trace ring any bells on your side?

Greetings

           Helge

#1139149#20
Date:
2026-06-16 22:44:33 UTC
From:
To:
If you can run an

apt dist-upgrade -o Dir::Log::Solver=/path/to/some/file.zst --solver internal

(not sure I fixed it to not require --solver internal)

That dumps the problem into a minimal reproducer, compressed with zstd,
so I can have a look at it and (if ok) add it to my regression test cases:

https://salsa.debian.org/apt-team/apt-tests
[...]

Seems libgvc6 is manually installed, and

libgvplugin-gd8 has a Breaks libgvc6 (<< 8.1.0-1~),
meanwhile the last libgvc6 is 2.42.4-3 which is only
available in stable.

The solver will usually consider them obsolete and try to avoid
them, but if it's manually installed, that overrides the "obsolete"
reason as people frequently build local only packages and don't
want the solver to go remove them...

However, the solver is arguably too eager here. When I made it strongly
protect manually installed packages I did not consider obsoletes, it
stands to reason obsolete manuals should have less protection.*

* There are three ways the solver protects manuals:

(1) Before resolving anything it primes the solver by pushing
    "assumptions" that all of them remain installed.

    In upgrade land, since upgrades are always optional, that
    causes upgrades to be kept back if they were to remove
    anything

(2) In the order of solving, it tries to keep manually
    installed packages first; that is, there is a work
    queue of "install this package", and the manuals
    come first.

(3) In the order of dependencies, it will move

    - installed packages to the start
    - obsolete packages to the end

    And then it resolves left-to-right.

It stands to reason that for obsolete manuals we should
likely remove protection 1 and 2. Enough "peer pressure"
from other dependency paths would then hopefully lead
to them being removed.

(Hopefully I say, because guaranteeing a correct result
for upgrades is not feasible, because it's not well-defined;
there are incredibly complex nuances in behavior expectations;
for example, it's not better to upgrade 2 packages than 1 if
you break a Recommends; so you cannot prioritize upgrading
all packages)

To go step by step:

This version (the new one) was rejected.

The reason for that chain is in parenthesis:

libgvc6 was (likely manually) installed

this in turn selected that particular version of it
[I think there only is one, but it is what it is :)]

Due to installing that version of libgvc6 we could not install
libgvplugin-gd8 [due to the Breaks if you recall]

(And that is essentially the end of the reasoning trail for
"why Reject:graphviz:amd64=14.1.2-1+b1", graphviz depends
 on libgvplugin-gd8)

#1139149#25
Date:
2026-06-18 19:43:46 UTC
From:
To:
Hello Julian,
Am Wed, Jun 17, 2026 at 12:44:33AM +0200 schrieb Julian Andres Klode:

root@twentytwo:~# LC_ALL=C apt dist-upgrade -o Dir::Log::Solver=/path/to/some/file/hktrace.zst --solver internal
The following packages were automatically installed and are no longer required:
  gir1.2-cloudproviders-0.3.0  gir1.2-glib-2.0-dev  libgts-0.7-5t64  libharfbuzz-cairo0  librust-cc-dev               librust-jobserver-dev  librust-shlex-dev  libsepol-dev
  gir1.2-freedesktop-dev       gir1.2-gly-2         libgts-bin       liblcms2-dev        librust-find-msvc-tools-dev  librust-sha2-asm-dev   libseccomp-dev     libsysprof-capture-4-dev
Use 'apt autoremove' to remove them.

Upgrading:
  graphviz               libqt5core5t64            libqt5qml5               libqt5sql5-psql           libqt5webenginecore5       librust-getrandom-dev          qml-module-qtmultimedia            qt5-gtk-platformtheme
  kwayland-integration   libqt5dbus5t64            libqt5qmlmodels5         libqt5sql5-sqlite         libqt5webenginewidgets5    librust-rand-core-dev          qml-module-qtqml                   qt5-image-formats-plugins
  libegl-mesa0           libqt5designer5           libqt5qmlworkerscript5   libqt5sql5t64             libqt5widgets5t64          librust-sha2-dev               qml-module-qtquick-controls        qtspeech5-speechd-plugin
  libgbm1                libqt5gui5t64             libqt5quick5             libqt5svg5                libqt5x11extras5           libselinux1                    qml-module-qtquick-controls2       qtwayland5
  libgl1-mesa-dri        libqt5multimedia5         libqt5quickcontrols2-5   libqt5test5t64            libqt5xdgiconloader3       libsemanage2                   qml-module-qtquick-dialogs
  libglx-mesa0           libqt5multimediaquick5    libqt5quicktemplates2-5  libqt5texttospeech5       libqt5xml5t64              mesa-libgallium                qml-module-qtquick-layouts
  libkf5i18nlocaledata5  libqt5multimediawidgets5  libqt5quickwidgets5      libqt5waylandclient5      libqt5xmlpatterns5         node-jest-debbundle            qml-module-qtquick-privatewidgets
  libkf5iconthemes5      libqt5network5t64         libqt5script5            libqt5waylandcompositor5  librust-blobby-dev         python3-pyqt5                  qml-module-qtquick-templates2
  libkf5kirigami2-5      libqt5networkauth5        libqt5sensors5           libqt5webchannel5         librust-block-buffer-dev   qdbus-qt5                      qml-module-qtquick-window2
  libkf5waylandclient5   libqt5positioning5        libqt5serialport5        libqt5webengine-data      librust-crypto-common-dev  qml-module-org-kde-kirigami2   qml-module-qtquick2
  libkf5xmlgui5          libqt5printsupport5t64    libqt5sql5-mysql         libqt5webengine5          librust-digest-dev         qml-module-qtgraphicaleffects  qml-module-qtwebengine

Installing dependencies:
  libgvc7                 librust-block-buffer-0.10-dev  librust-cmov-dev               librust-digest-0.10-dev     librust-once-cell-dev         librust-rustversion-dev   librust-wasm-bindgen-macro-dev          librust-zerocopy-dev
  libgvplugin-gd8         librust-bumpalo-dev            librust-critical-section-dev   librust-hybrid-array-dev    librust-parking-lot-core-dev  librust-smallvec-dev      librust-wasm-bindgen-macro-support-dev  libxdot4
  libgvplugin-pango8      librust-bytemuck-derive-dev    librust-crypto-common-0.1-dev  librust-js-sys-dev          librust-portable-atomic-dev   librust-void-dev          librust-wasm-bindgen-shared-dev         node-import-local
  librust-blobby-0.3-dev  librust-bytemuck-dev           librust-ctutils-dev            librust-malloc-size-of-dev  librust-rand-core-0.6-dev     librust-wasm-bindgen-dev  librust-zerocopy-derive-dev

REMOVING:
  libatk-bridge2.0-dev  libbrasero-media3-dev  libgdk-pixbuf-2.0-dev  libglycin-2-dev      libgvc6          libnotify-dev    librust-rand-core+getrandom-dev  libselinux1-dev     qml-module-qtwebkit
  libatk1.0-dev         libcairo2-dev          libgio-2.0-dev         libgstreamer1.0-dev  libharfbuzz-dev  libpango1.0-dev  librust-rand-core+serde-dev      mesa-va-drivers
  libatspi2.0-dev       libcloudproviders-dev  libglib2.0-dev         libgtk-3-dev         libmount-dev     libqt5webkit5    librust-rand-core+std-dev        mesa-vdpau-drivers

Summary:
  Upgrading: 81, Installing: 31, Removing: 25, Not Upgrading: 0
  Download size: 20.7 MB / 88.3 MB
  Freed space: 82.5 MB

Warning: Could not open file '/scr/mirror/hetzener/home/hktrace.zst' - EDSP::Resolve (2: No such file or directory)
Continue anyway? [y/N]

So with these parameters, it would actually perform the updates.

I pressed "N" for now, because I'm not sure this is what you need.
Removing the "solver internal part" goes back to doing nothing:
root@twentytwo:~# LC_ALL=C apt dist-upgrade -o Dir::Log::Solver=/path/to/some/file/hktrace.zst
Not upgrading:
  graphviz               libqt5core5t64            libqt5qml5               libqt5sql5-psql           libqt5webenginecore5       librust-getrandom-dev          qml-module-qtmultimedia            qt5-gtk-platformtheme
  kwayland-integration   libqt5dbus5t64            libqt5qmlmodels5         libqt5sql5-sqlite         libqt5webenginewidgets5    librust-rand-core-dev          qml-module-qtqml                   qt5-image-formats-plugins
  libegl-mesa0           libqt5designer5           libqt5qmlworkerscript5   libqt5sql5t64             libqt5widgets5t64          librust-sha2-dev               qml-module-qtquick-controls        qtspeech5-speechd-plugin
  libgbm1                libqt5gui5t64             libqt5quick5             libqt5svg5                libqt5x11extras5           libselinux1                    qml-module-qtquick-controls2       qtwayland5
  libgl1-mesa-dri        libqt5multimedia5         libqt5quickcontrols2-5   libqt5test5t64            libqt5xdgiconloader3       libsemanage2                   qml-module-qtquick-dialogs
  libglx-mesa0           libqt5multimediaquick5    libqt5quicktemplates2-5  libqt5texttospeech5       libqt5xml5t64              mesa-libgallium                qml-module-qtquick-layouts
  libkf5i18nlocaledata5  libqt5multimediawidgets5  libqt5quickwidgets5      libqt5waylandclient5      libqt5xmlpatterns5         node-jest-debbundle            qml-module-qtquick-privatewidgets
  libkf5iconthemes5      libqt5network5t64         libqt5script5            libqt5waylandcompositor5  librust-blobby-dev         python3-pyqt5                  qml-module-qtquick-templates2
  libkf5kirigami2-5      libqt5networkauth5        libqt5sensors5           libqt5webchannel5         librust-block-buffer-dev   qdbus-qt5                      qml-module-qtquick-window2
  libkf5waylandclient5   libqt5positioning5        libqt5serialport5        libqt5webengine-data      librust-crypto-common-dev  qml-module-org-kde-kirigami2   qml-module-qtquick2
  libkf5xmlgui5          libqt5printsupport5t64    libqt5sql5-mysql         libqt5webengine5          librust-digest-dev         qml-module-qtgraphicaleffects  qml-module-qtwebengine

Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 81

I cannot rember installing a library manually, and I very seldom install something manually.

Greetings

          Helge

#1139149#30
Date:
2026-06-19 07:37:57 UTC
From:
To:
It's done dumping when it's at the prompt, so you can just attach the
file

#1139149#35
Date:
2026-06-19 15:49:35 UTC
From:
To:
Hello Julian,
Am Fri, Jun 19, 2026 at 09:37:57AM +0200 schrieb Julian Andres Klode:

It's attached, and all available packages are installed, just a few
automatic installed packages to be removed.

If you need any further information, please let me know.

Greetings

         Helge