Dnfdragora on F42 does not work

I recently updated two laptops going from F41 to F42

Since that upgrade dnfdragora does not do what it should.

On starting up it seems to start indeed, the line indicating the progress moves to about one third, and then it halts. It reall halts and does not listen to anything. After a few minutes the system notes that dnfdragora does not work and says that Python3 is the one that causes the stop.

In 9 out of 10 cases, stopping is only by killing the program with the kill -9 pid

any pointer would be helpful

what version of dnf dragora is installed?
dnf list --installed dnfdragora
If the version is too old it will not work with dnf5 that is installed on f42 & f43
Earlier versions of dnfdragora were only usable with dnf4 which has been the fedora stable version for a long time. Recently dnf5 became the preferred version and dnfdragora had to follow suit.

Have you tried sudo dnf upgrade --refresh or sudo dnf distro-sync --refresh followed by a reboot to ensure that everything is fully updated?

For fedora 41 the dnfdragora version was 2.1.5 and only used dnf4.
With the release of fedora 42 dnfdragora was upgraded to version 2.99.0 which should work properly with dnf5.
Note also that the python version has upgraded with each fedora release as well so it is necessary that the system be fully updated so everything can work together as designed.

Thanks for the quick response, the version is

dnfdragora.noarch 2.99.0^git20250421.1.2f707ee-1.fc42 updates

and

jan@fedora:/usr/shared/systems/qt-dab$ sudo dnf distro-sync --refresh
[sudo] password for jan:
Updating and loading repositories:
RPM Fusion for Fedora 42 - Nonfree 100% | 2.3 KiB/s | 9.0 KiB | 00m04s
RPM Fusion for Fedora 42 - Nonfree - U 100% | 3.8 KiB/s | 8.3 KiB | 00m02s
RPM Fusion for Fedora 42 - Nonfree - S 100% | 4.6 KiB/s | 8.3 KiB | 00m02s
RPM Fusion for Fedora 42 - Nonfree - N 100% | 5.0 KiB/s | 8.6 KiB | 00m02s
RPM Fusion for Fedora 42 - Free - Upda 100% | 5.0 KiB/s | 8.2 KiB | 00m02s
RPM Fusion for Fedora 42 - Free 100% | 6.7 KiB/s | 8.9 KiB | 00m01s
Fedora 42 - x86_64 100% | 19.2 KiB/s | 24.0 KiB | 00m01s
Copr repo for PyCharm owned by phracek 100% | 3.7 KiB/s | 2.1 KiB | 00m01s
Fedora 42 openh264 (From Cisco) - x86_ 100% | 936.0 B/s | 986.0 B | 00m01s
Fedora 42 - x86_64 - Updates 100% | 19.8 KiB/s | 19.7 KiB | 00m01s
google-chrome 100% | 2.3 KiB/s | 1.3 KiB | 00m01s
Dropbox Repository 100% | 2.6 KiB/s | 1.5 KiB | 00m01s
Repositories loaded.
Nothing to do.

Ok, so both of those appear to be current.
Can you be more detailed in your description of the issue?

This is not very detailed and does not tell us what you are actually expecting vs what happens. The updates may very well be doing what is intended, but what you see may have changed with the new version release.

(Yes, I know you added some details, but nothing more that a generalized description and nothing from the logs or otherwise able to strictly identify what is happening)

I actually installed dnfdragora on my f42 test machine and it installed then opened and appears to function properly. The first time it was started it had to build the cache, which took a few seconds, then works well.

There are 2 files created when dnfdragora is run that might be causing the issue.
~/.config/dnfdragora.yaml
/etc/dnfdragora/dnfdragora.yaml
and if those files are not exactly the same with versions 2.1.5 and 2.99.0 then problems may occur.
Maybe consider removing the file ~/.config/dnfdragora.yaml then restart dnfdragora and see what happens. (the other file is installed when dnfdragora is installed)

Dnfdragora doesn’t even work in Rawhide KDE. I’ve filed a bug report with Red Hat Bugzilla.
https://bugzilla.redhat.com/show_bug.cgi?id=2416802

Thanks
Not much is happen ing actually
there two cases

  1. once in about 10 times, the whole init of dragora fiinishes of and dragora reports “empty” (“leeg” in dutch)
  2. most of the tiime at the bottom the message “Aanmaken van pakketen-cache” (i.e. prepare the cache) shows left just above the bottom, and the bottom progrss indicator moces to 33% after that, nothing happens and the window does not respond to anything anymore (e.g. closing with either the top right X or the bottom right indicator has no effect of all
    After a few minutes, the message “Pytthin3 reageert niet” (Python3 does not react) with the options to wait or to close imemdiiately. Trying the option to
    imemediately close has no effect at all. The only way to stop is to look for the PID and kill -9

I just installed dnfdragore, just for the purpose of testing. It kind of works, but it chrashes quite a bit. Also, it didn’t use the gui environment, but fell back to using the ncurses interface.

I don’t use dnfdragore anymore, but if it would work properly, it could be quite useful, as Gnome Software doesn’t show non-gui apps.

The development tools for the software I am writing I ususally know. When switching (recently I switch from using Qt5 to Qt6), and compiling for another platform (moving from W32 as target to W64) I need to look up a lot of libraries, at least to see whether they are in the Mingw list or not

dnfdragora still does not work at all. Starting is from the command line I get

ogging disabled
<M> [ui] YUILoader.cc:60 loadUI(): DISPLAY: “:0”
<M> [ui] YUILoader.cc:61 loadUI(): XDG_CURRENT_DESKTOP: “GNOME”
<M> [ui] YUILoader.cc:62 loadUI(): YUI_PREFERED_BACKEND: “”
<M> [ui] YUILoader.cc:74 loadUI(): Detected a Gtk-based desktop environment.
<M> [ui] YUILoader.cc:74 loadUI(): Prefering Gtk-UI if available and no
<M> [ui] YUILoader.cc:74 loadUI(): user-selected override is present.
<M> [ui] YUILoader.cc:96 loadUI(): User-selected UI-plugin: “”
<M> [ui] YUILoader.cc:128 loadUI(): Using UI-plugin: “gtk”
<M> [ui] YUI.cc:83 YUI(): This is libyui 4.2.16
<M> [ui] YUI.cc:84 YUI(): Creating UI without threads
<M> [gtk] YGUI.cc:49 YGUI(): This is libyui-gtk 2.52.5
<M> [gtk] YGUI.cc:166 checkInit(): Style “/usr/share/libyui/theme/current/wizard/style.css”
<M> [gtk] YGUI.cc:188 checkInit(): Style “/usr/share/libyui/theme/current/wizard/style.css” not found. Ignoring style
<M> [ui] YUI.cc:238 topmostConstructorHasFinished(): Running without threads
<M> [ew] YExternalWidgets.cc:40 YExternalWidgets(): Creating Libyui External Widgets object
<M> [mga-gtk-ui] YMGA_GCBTable.cc:439 YMGA_GCBTable(): columns 8 tot 8
__async_thread_loop(list_fd): timeout reached while reading from pipe.
run_dbus_async main loop running True - probably last request is not terminated yet

For me that is abracadabra

dnfdragora is badly broken in F43. It freezes under non-root user. Under root, it loads a different UI (gtk vs qt I dunno) and only shows available packages. The list of groups is empty. The list of installed packages is empty.

Under non-root:

$ dnfdragora
Try reading configuration file
From ./dnfdragora.yaml
Skipped exception: <[Errno 2] No such file or directory: ‘./dnfdragora.yaml’>
From /etc/dnfdragora/dnfdragora.yaml
Finally read user settings from /home/emmitol15/.config/dnfdragora.yaml
Logging disabled
<M> [ui] YUILoader.cc:60 loadUI(): DISPLAY: “:0”
<M> [ui] YUILoader.cc:61 loadUI(): XDG_CURRENT_DESKTOP: “MATE”
<M> [ui] YUILoader.cc:62 loadUI(): YUI_PREFERED_BACKEND: “”
<M> [ui] YUILoader.cc:74 loadUI(): Detected a Gtk-based desktop environment.
<M> [ui] YUILoader.cc:74 loadUI(): Prefering Gtk-UI if available and no
<M> [ui] YUILoader.cc:74 loadUI(): user-selected override is present.
<M> [ui] YUILoader.cc:96 loadUI(): User-selected UI-plugin: “”
<M> [ui] YUILoader.cc:128 loadUI(): Using UI-plugin: “gtk”
<M> [ui] YUI.cc:83 YUI(): This is libyui 4.2.16
<M> [ui] YUI.cc:84 YUI(): Creating UI without threads
<M> [gtk] YGUI.cc:49 YGUI(): This is libyui-gtk 2.52.5

(python3:250218): dbind-WARNING **: 18:04:44.817: Couldn’t connect to accessibility bus: Failed to connect to socket /root/.cache/at-spi/bus_0: Permission denied
<M> [gtk] YGUI.cc:166 checkInit(): Style “/usr/share/libyui/theme/current/wizard/style.css”
<M> [gtk] YGUI.cc:188 checkInit(): Style “/usr/share/libyui/theme/current/wizard/style.css” not found. Ignoring style
<M> [ui] YUI.cc:238 topmostConstructorHasFinished(): Running without threads
<M> [ew] YExternalWidgets.cc:40 YExternalWidgets(): Creating Libyui External Widgets object
<M> [mga-gtk-ui] YMGA_GCBTable.cc:439 YMGA_GCBTable():  columns 8 tot 8
__async_thread_loop(list_fd): timeout reached while reading from pipe.
run_dbus_async main loop running True - probably last request is not terminated yet
Killed                     dnfdragora

Started, froze, was killed.

Under root:

$ sudo dnfdragora
Try reading configuration file
From ./dnfdragora.yaml
Skipped exception: <[Errno 2] No such file or directory: ‘./dnfdragora.yaml’>
From /etc/dnfdragora/dnfdragora.yaml
Finally read user settings from /root/.config/dnfdragora.yaml
Skipped exception: <[Errno 2] No such file or directory: ‘/root/.config/dnfdragora.yaml’>
Logging disabled
<M> [ui] YUILoader.cc:60 loadUI(): DISPLAY: “:0”
<M> [ui] YUILoader.cc:61 loadUI(): XDG_CURRENT_DESKTOP: “”
<M> [ui] YUILoader.cc:62 loadUI(): YUI_PREFERED_BACKEND: “”
<M> [ui] YUILoader.cc:96 loadUI(): User-selected UI-plugin: “”
<M> [ui] YUILoader.cc:128 loadUI(): Using UI-plugin: “qt”
<M> [ui] YUI.cc:83 YUI(): This is libyui 4.2.16
<M> [ui] YUI.cc:84 YUI(): Creating UI without threads
<M> [qt-ui] YQUI.cc:107 YQUI(): This is libyui-qt 4.2.16
<M> [ui] YUI.cc:238 topmostConstructorHasFinished(): Running without threads
[qt-ui] YQUI.cc:656 qMessageHandler(): QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to ‘/tmp/runtime-root’
<M> [qt-styler] QY2Styler.cc:146 loadStyleSheet(): Couldn’t open style sheet “/usr/share/libyui/theme/current/wizard/style.qss”
<M> [qt-ui] YQUI.cc:251 processCommandLineArgs(): Qt argument: /usr/bin/python3
<M> [qt-ui] YQUI.cc:251 processCommandLineArgs(): Qt argument: /usr/bin/dnfdragora
<M> [qt-ui] YQUI.cc:404 calcDefaultSize(): Default size: 2688 x 1484
<M> [qt-ui] YQApplication.cc:96 YQApplication(): QIcon::themeName = ‘hicolor’
<M> [qt-ui] YQApplication.cc:151 loadPredefinedQtTranslations(): Selected language: en_CA
<M> [qt-ui] YQApplication.cc:171 loadPredefinedQtTranslations(): Loaded translations for predefined Qt dialogs for en_CA
<M> [qt-ui] YQUI.cc:228 initUI(): YQUI initialized. Thread ID: 0x0x7fb3b3aa4bc0
<M> [ew] YExternalWidgets.cc:40 YExternalWidgets(): Creating Libyui External Widgets object
[qt-ui] YQGenericButton.cc:139 setIcon(): Can’t load icon “system-search”
__async_thread_loop(list_fd): timeout reached while reading from pipe.
run_dbus_async main loop running True - probably last request is not terminated yet
__async_thread_loop(list_fd): timeout reached while reading from pipe.
run_dbus_async main loop running True - probably last request is not terminated yet
void libdnf5::repo::RepoSack::update_and_load_enabled_repos(bool) is deprecated: Use load_repos() which allows specifying repo type.
Start looking for groups
void libdnf5::repo::RepoSack::update_and_load_enabled_repos(bool) is deprecated: Use load_repos() which allows specifying repo type.
End found 176 groups
void libdnf5::repo::RepoSack::update_and_load_enabled_repos(bool) is deprecated: Use load_repos() which allows specifying repo type.

Hisl Jo hsljo:

These problems seems to be related to the GTK mode of dnfdragora, when I run dnfdragora on KDE which uses the “qt” backend I don’t have these problems. You can force it to use QT with:

dnfdragora –-qt

assuming the qt support is installed. BTW a lot of that console output is normal and expected. Dnfdragora as a gui app is usually intended to be launched from a gui launcher so all that text would usually not be seen by the user. That’s probably why it’s so arcane, the developer is figuring it won’t be seen and most people aren’t starting it from a terminal

Thanks

dnfdragora -qt starts OK, however, it fails to find repositories and obviously does not show pacakhes.
After two or three attempts to search something it feezes

Anyway
Thanks for the effort

jan

any pointer would be helpful

It’s simply not a very reliable packaging app. In fact I’m on Fedora 44 Beta and it no longer works for me. It just stays blank forever. I ran strace to try tracing what it was doing:

strace -p `pgrep dnfdragora`

But could not interpret what it was doing, it does seem to be active forever in some loop of API calls that seem to be failing.

My pointer would be to not use it at all and learn the command line dnf5. I also use KDE Discover package manager but only to look at the updates, I don’t like the whole “force you to reboot” design it uses. So I don’t actually install rpm packages from Discover. Discover is fine for upgrading flatpaks and plasma applets. Discover has recently improved so that you aren’t totally forced to reboot, it simply tells you that if you don’t the upgrades won’t be applied (upgrades are only applied by reboot).

I like the flexibility of the command line dnf where I can judge when I need to reboot and when I don’t.