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
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.
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
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)
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
It's done dumping when it's at the prompt, so you can just attach the file
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