manatools / dnfdragora Goto Github PK
View Code? Open in Web Editor NEWdnfdragora is a dnf frontend based on libyui abstraction
License: GNU General Public License v3.0
dnfdragora is a dnf frontend based on libyui abstraction
License: GNU General Public License v3.0
On the old yum based yumex we had this capability for sorting RPM by size. Please advise if this could be implemented. Thanks.
https://github.com/manatools/dnfdragora/blob/master/po/cs.po#L1127
The czech translation of "Check all" is wrong (to check can be translated in several meanings, but the one selected does not make any sense). Correct translation shall be "Vybrat vše" (literally select all).
reported https://bugs.mageia.org/show_bug.cgi?id=21453
Description of problem:
open dnfdragora: a window opens, click on "files > package sources" : the window "packages sources manager" opens, displaying a list of sources: only two boxes are checked by default: mageia-x86_64 and updates-x86_64; I have selected mageia-i586, updates-i586 and a couple of others, then I have click on the "apply button" and quitted dnfdragora; it didn't keep my choice in memory, since after running successively as root, and in this order, the commands:
dnf upgrade
urpmi --auto-update
(which returns you'll find in the attached documents) shows that dnf took into account only updates-x86_64 and not upgrades-i586
Note: This issue has been created from #48.
#Steps to reproduce:
GtkComboBox
esThe widgets for selecting "All" or "Group", architecture, name:
When one of these comboboxes changes, it will immediately trigger a new search. This disturbes the user workflow since it blocks all UI.
Two possible solutions:
gtk3-3.22.12-2.fc25.x86_64
dnfdragora-1.0.1-5.git20170505.2a3b056.fc25.noarch
libyui-gtk-2.44.9-2.fc25.x86_64
Alt+F -> Q works in a pinch, but Ctrl+Q or Ctrl+W as a hotkey for Quit is pretty universal in any app that has a Menu bar. It would be nice to see it implemented in dnfdragora.
Using revision 7f94340.
Testing with an update not yet installed: youtube-dl
, which is in the "Text-based Internet" group.
youtube-dl
appears in the list.youtube-dl
appears (as the one result).youtube-dl
by name, default "All" filter: youtube-dl
appears (3 results, different versions of the package).youtube-dl
by name, "To update" filter: empty search result.Hi.
Currently (on my dnfdragora version 1.0.1) on Fedora 26, options inside "User preferences" dialog appearing one beside other like:
"Show updates next startup" "Do not show groups view next startup
I suggest on you to make them one under other to avoid confusion. This confusion may be not prominent in case of above example because there are check box before each of above 2 options which assist in recognition of them as 2. But for:
"Proceed without asking for conformation" ""Interval in minutes to check for updates"
confusion it will be more prominent & possible because no check box before "Interval in minutes to check for update" (it not need such check box off-course). There is no even a vertical separation line between these 2 options. Here it will be useful to put options (ALL options) one bellow other.
This will be more important for users using dark theme (especially when combined with low brightness due to long duty on laptop screen).
Using DNF on the command line to list of install an app will also indicate which repository it's pulling the app from. This would be nice to see in dnfdragora, particularly when the package is available from multiple repositories.
A "Repo." column is also present in Yumex, which dnfdragora will replace, and so I suggest that we should add it in order for dnfdragora to reach feature parity with Yum Extender.
Using revision bb6edcf.
Start looking for groups
Unexpected error: <class 'dnfdaemon.client.DaemonError'>
Traceback (most recent call last):
File "/usr/bin/dnfdragora", line 33, in <module>
main_gui = dnfdragora.ui.mainGui(options)
File "/usr/lib/python3.5/site-packages/dnfdragora/ui.py", line 298, in __init__
self._fillGroupTree()
File "/usr/lib/python3.5/site-packages/dnfdragora/ui.py", line 467, in _fillGroupTree
rpm_groups = self.backend.get_groups()
File "/usr/lib/python3.5/site-packages/dnfdragora/basedragora.py", line 54, in backend
return self.get_root_backend()
File "/usr/lib/python3.5/site-packages/dnfdragora/basedragora.py", line 80, in get_root_backend
self.backend.ExpireCache()
File "/usr/lib/python3.5/site-packages/dnfdaemon/client/__init__.py", line 401, in ExpireCache
rc = self._run_dbus_async('ExpireCache', '()')
File "/usr/lib/python3.5/site-packages/dnfdaemon/client/__init__.py", line 293, in _run_dbus_async
result = self._get_result(data)
File "/usr/lib/python3.5/site-packages/dnfdaemon/client/__init__.py", line 277, in _get_result
self._handle_dbus_error(user_data['error'])
File "/usr/lib/python3.5/site-packages/dnfdaemon/client/__init__.py", line 250, in _handle_dbus_error
raise DaemonError(str(err))
dnfdaemon.client.DaemonError: g-io-error-quark: GDBus.Error:org.baseurl.DnfSystem.LockedError: dnf is locked by another application (36)
<_M_> [ui] YUILoader.cc:104 deleteUI(): Shutting down UI
<ERR> [ui] YUI.cc:94 ~YUI(): 1 open dialogs left over
Segmentation fault (core dumped)
Line 1130 in b3720ad
A correct translation would be
msgstr "Tout coch&er"
This crash appears on all backends… :/
dnf_backend.py:225:on_RPMProgress:KeyError: 10
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/dnfdaemon/client/__init__.py", line 187, in __call__
return getattr(self.proxy, self.method)(*args)
File "/usr/lib/python3.6/site-packages/dnfdaemon/client/__init__.py", line 228, in _on_g_signal
self.handle_dbus_signals(proxy, sender, signal, args)
File "/usr/lib/python3.6/site-packages/dnfdaemon/client/__init__.py", line 556, in handle_dbus_signals
self.on_RPMProgress(*args)
File "/usr/lib/python3.6/site-packages/dnfdragora/dnf_backend.py", line 225, in on_RPMProgress
self.frontend.infobar.info_sub(const.RPM_ACTIONS[action] % name)
KeyError: 10
Local variables in innermost frame:
name: 'google-chrome-stable-57.0.2987.133-1.x86_64'
num: ' ( 1/2 )'
ts_total: 2
ts_current: 1
te_total: 100
te_current: 100
action: 10
package: 'google-chrome-stable,0,57.0.2987.133,1,x86_64,google-chrome'
self: <dnfdragora.dnf_backend.DnfRootBackend object at 0x7f8bc2953f60>
Hi. I tried dnfdragora from copr repositories on Fedora 24 X64 bit Cinnamon version. I noticed that it have no "Update Notification" option as that existing in Yum extender (DNF).
In Yum extender (DNF) there is "performance" icon. By clicking this icon, a windows will open & contain many tab, one of them called "Update Checker" It give option to activate it or disable it, & give option to determain time interval by minutes at which Yum extender (DNF) check for availability of new updates, like every 60 minutes.
Kindly can you add this feature please ?
Using revision bb6edcf.
I tried listing the available updates. But neither "All updates" in the first combobox nor "To update" in the filter combobox appear to do anything useful. (When I tried, I had 5 updates not installed yet according to plasma-pk-updates.)
Are those filters expected to do anything yet? If not, it may be worth hiding them until they work.
dnfdragora does excessive logging. An example:
$ LC_ALL=C dnfdragora
Skipped exception: <[Errno 2] No such file or directory: './dnfdragora.yaml'>
<_M_> [ui] YUILoader.cc:50 loadUI(): DISPLAY: ":0"
<_M_> [ui] YUILoader.cc:51 loadUI(): XDG_CURRENT_DESKTOP: "GNOME"
<_M_> [ui] YUILoader.cc:52 loadUI(): YUI_PREFERED_BACKEND: ""
<_M_> [ui] YUILoader.cc:64 loadUI(): Detected a Gtk-based desktop environment.
<_M_> [ui] YUILoader.cc:64 loadUI(): Prefering Gtk-UI if available and no
<_M_> [ui] YUILoader.cc:64 loadUI(): user-selected override is present.
<_M_> [ui] YUILoader.cc:86 loadUI(): User-selected UI-plugin: ""
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-gtk.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-gtk.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-gtk.so.8 in /usr/lib64/yui
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-ncurses.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-ncurses.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-ncurses.so.8 in /usr/lib64/yui
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-qt.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-qt.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-qt.so.8 in /usr/lib64/yui
<_M_> [ui] YUILoader.cc:118 loadUI(): Using UI-plugin: "gtk"
<_M_> [ui] YSettings.cc:179 loadedUI(): Set loadedUI to "gtk"
<_M_> [ui] YSettings.cc:180 loadedUI(): loadedUI is now locked.
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-gtk.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-gtk.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-gtk.so.8 in /usr/lib64/yui
<_M_> [ui] YUI.cc:76 YUI(): This is libyui 3.3.2
<_M_> [ui] YUI.cc:77 YUI(): Creating UI without threads
<_M_> [gtk] YGUI.cc:48 YGUI(): This is libyui-gtk 2.44.9
<_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
<WRN> [gtk] YGUtils.cc:543 loadPixbuf(): Could not load icon: /usr/share/libyui/theme/icons/32x32/apps/yast.png
<WRN> [gtk] YGUtils.cc:543 loadPixbuf(): Reason: Failed to open file '/usr/share/libyui/theme/icons/32x32/apps/yast.png': No such file or directory
<_M_> [ui] YUI.cc:230 topmostConstructorHasFinished(): Running without threads
<_M_> [ui] YSettings.cc:197 loadedUI(): loadedUI: "gtk"
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-mga-gtk.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-mga-gtk.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-mga-gtk.so.8 in /usr/lib64/yui
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-mga-gtk.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-mga-gtk.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-mga-gtk.so.8 in /usr/lib64/yui
<_M_> [ew] YExternalWidgets.cc:37 YExternalWidgets(): Creating Libyui External Widgets object
<_M_> [gtk] YMGA_GCBTable.cc:415 YMGA_GCBTable(): Slection mode 2
<_M_> [gtk] YMGA_GCBTable.cc:434 YMGA_GCBTable(): columns 7 tot 7
xkbcommon: ERROR: Key "<LFSH>" added to modifier map for multiple modifiers; Using Lock, ignoring Shift
Start looking for groups
End found 139 groups
not in cache
not in cache
not in cache
xkbcommon: ERROR: Key "<LFSH>" added to modifier map for multiple modifiers; Using Lock, ignoring Shift
(python3:12286): Gtk-WARNING **: Negative content width -2 (allocation 11, extents 6x7) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: Negative content width -11 (allocation 2, extents 6x7) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: Negative content width -12 (allocation 1, extents 6x7) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: Negative content width -9 (allocation 4, extents 6x7) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: Negative content width -2 (allocation 11, extents 6x7) while allocating gadget (node button, owner GtkButton)
Gdk-Message: Window 0x55f1529c44d0 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: Window 0x55f1529c44d0 is a temporary window without parent, application will not be able to position it on screen.
<ERR> [Gdk] libyui-gtk:0 (): xdg_popup_configure: assertion 'impl->transient_for' failed
Gdk-Message: Window 0x55f1537bf010 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: Window 0x55f1537bf010 is a temporary window without parent, application will not be able to position it on screen.
<ERR> [Gdk] libyui-gtk:0 (): xdg_popup_configure: assertion 'impl->transient_for' failed
<_M_> [gtk] YMGA_GCBTable.cc:415 YMGA_GCBTable(): Slection mode 3
<_M_> [gtk] YMGA_GCBTable.cc:434 YMGA_GCBTable(): columns 2 tot 2
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
(python3:12286): Gtk-WARNING **: Negative content width -2 (allocation 22, extents 12x12) while allocating gadget (node label, owner GtkLabel)
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -10 and height 20
(python3:12286): Gtk-WARNING **: Negative content width -23 (allocation 1, extents 12x12) while allocating gadget (node label, owner GtkLabel)
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -12 and height 20
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -14 and height 20
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -18 and height 20
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -46 and height 20
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -16 and height 20
Gdk-Message: Window 0x55f1537bf010 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: Window 0x55f1537bf010 is a temporary window without parent, application will not be able to position it on screen.
<ERR> [Gdk] libyui-gtk:0 (): xdg_popup_configure: assertion 'impl->transient_for' failed
<_M_> [gtk] YMGA_GCBTable.cc:415 YMGA_GCBTable(): Slection mode 3
<_M_> [gtk] YMGA_GCBTable.cc:434 YMGA_GCBTable(): columns 2 tot 2
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
<_M_> [gtk] YMGA_GCBTable.cc:530 doAddItem(): columns 1
Gdk-Message: Window 0x55f1537deb00 is a temporary window without parent, application will not be able to position it on screen.
Gdk-Message: Window 0x55f1537deb00 is a temporary window without parent, application will not be able to position it on screen.
<ERR> [Gdk] libyui-gtk:0 (): xdg_popup_configure: assertion 'impl->transient_for' failed
<ERR> [Gtk] libyui-gtk:0 (): gtk_box_pack: assertion '_gtk_widget_get_parent (child) == NULL' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -32 and height 20
(python3:12286): Gtk-WARNING **: Negative content width -23 (allocation 1, extents 12x12) while allocating gadget (node label, owner GtkLabel)
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -10 and height 20
(python3:12286): Gtk-WARNING **: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 200 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 271 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 281 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -1 (allocation 1, extents 1x1) while allocating gadget (node spinbutton, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 32) while measuring gadget (node entry, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 377 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -8 (allocation 2, extents 5x5) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: Negative content height -8 (allocation 2, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 491 and height -2
(python3:12286): Gtk-WARNING **: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 281 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -1 (allocation 1, extents 1x1) while allocating gadget (node spinbutton, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 32) while measuring gadget (node entry, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 377 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -9 (allocation 1, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 336 and height -3
(python3:12286): Gtk-WARNING **: Negative content height -9 (allocation 1, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 336 and height -3
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 491 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 281 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -1 (allocation 1, extents 1x1) while allocating gadget (node spinbutton, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 32) while measuring gadget (node entry, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 377 and height -5
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 678 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -9 (allocation 1, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 336 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -9 (allocation 1, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 336 and height -5
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 491 and height -2
(python3:12286): Gtk-WARNING **: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 281 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -1 (allocation 1, extents 1x1) while allocating gadget (node spinbutton, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 32) while measuring gadget (node entry, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 377 and height -5
(python3:12286): Gtk-WARNING **: Negative content height -9 (allocation 1, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 336 and height -3
(python3:12286): Gtk-WARNING **: Negative content height -9 (allocation 1, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 336 and height -3
(python3:12286): Gtk-WARNING **: Negative content height -3 (allocation 1, extents 2x2) while allocating gadget (node checkbutton, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 0, extents 1x1) while allocating gadget (node check, owner GtkCheckButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 281 and height -2
(python3:12286): Gtk-WARNING **: Negative content height -1 (allocation 1, extents 1x1) while allocating gadget (node spinbutton, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 32) while measuring gadget (node entry, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (0 < 16) while measuring gadget (node button, owner GtkSpinButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 377 and height -2
(python3:12286): Gtk-WARNING **: Negative content height -6 (allocation 4, extents 5x5) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: Negative content height -6 (allocation 4, extents 5x5) while allocating gadget (node button, owner GtkButton)
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 200 and height -1
<ERR> [Gtk] libyui-gtk:0 (): gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed
(python3:12286): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 271 and height -1
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (6 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (8 < 32) while measuring gadget (node entry, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (8 < 16) while measuring gadget (node button, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (8 < 16) while measuring gadget (node button, owner GtkSpinButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 8, extents 5x5) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: Negative content height -2 (allocation 8, extents 5x5) while allocating gadget (node button, owner GtkButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (10 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (10 < 14) while measuring gadget (node check, owner GtkCheckButton)
(python3:12286): Gtk-WARNING **: for_size smaller than min-size (23 < 32) while measuring gadget (node entry, owner GtkSpinButton)
<_M_> [ui] YUILoader.cc:163 deleteUI(): Shutting down UI
Closing dnfdragora
<_M_> [ew] YExternalWidgets.cc:116 ~YExternalWidgetsTerminator(): Shutting down mga External Widgets
<_M_> [ew] YMGAWidgetExtensionFactory.cc:49 ~YMGAWidgetFactory(): Factory removed
Those Gtk warnings should not happen. Some of them are a result of issues described in #48
Installed software versions:
gtk3-3.22.12-2.fc25.x86_64
dnfdragora-1.0.1-5.git20170505.2a3b056.fc25.noarch
libyui-gtk-2.44.9-2.fc25.x86_64
Hi.
I'm on Fedora 26 X64 Cinnamon edition with dnfdragora version 1.0.1
I notice the following:
At booting system, when OS started & launched DE GUI of it, dnfdragora-updater icon not appear in panel till it finished from check for new update !
If no new update available & it is not time to refresh repositories, then it delayed seconds (about 10 sec.) before it appear. But if it is time to check for new update & refresh repositories, then it will delayed till this process is completed. This may last minutes depending on Internet speed. During this period "sudo dnf upgrade --refresh" command from terminal will be blocked till dnfdragora finish it's ongoing job.
I'm not programmer, & I do not know whether this behaviour is normal or bugy. Please if this thread is invalid, close it.
Best.
When DNFDragora is already running, and a user opens a .rpm file from a file manager (Nautilus, Dolphin, etc.), it should pass the open event to the open instance, not try to open another instance only to give an error message and close the second instance.
By default, dnfdragora invokes dnfdaemon, which is running as root. This even happens for simple package requests. Any programming error might cause the dnfdaemon to break the system. To make those errors less dangerous, I suggest that dnfdragora only runs dnfdaemon as root if it needs to do transactions (i.e. install/uninstall software) or accesses the history database (if this feature comes back from yumex-dnf).
Installed software:
gtk3-3.22.12-2.fc25.x86_64
dnfdragora-1.0.1-5.git20170505.2a3b056.fc25.noarch
libyui-gtk-2.44.9-2.fc25.x86_64
Hi. I'm on Fedora 26 X64 bit Cinnamon edition.
I added external repository of "Ring" messenger:
sudo dnf config-manager --add-repo https://dl.ring.cx/ring-nightly/fedora_27/ring-nightly.repo
sudo dnf install ring
Please see:
https://ring.cx/en/download/gnu-linux
I noticed that dnfdragora do not notify me about new update from this repository, although it do well this for Fedora & RPMFusion repositories !!
Please your kind investigation about this issue.
Best.
Steps to reproduce:
gnome-tweak-tool
or adding the environment variable GTK_THEME=Adwaita:dark
What happens:
The theme is hard to read. Links look painful. See this screenshot:
What should happen:
Links should be lighter.
Installed software versions:
gtk3-3.22.12-2.fc25.x86_64
dnfdragora-1.0.1-5.git20170505.2a3b056.fc25.noarch
libyui-gtk-2.44.9-2.fc25.x86_64
Using revision bb6edcf.
Icons for the groups are AWOL on Fedora. The paths it tries to use are for Mageia. So I get only warnings on the console about not found icons and no icons.
https://fedorahosted.org/comps/ explains how icons for comps groups should be looked up:
Groups have an icon associated with them. These icons come from the comps-extras package; icons are read from
/usr/share/pixmaps/comps/<group-id>.png
. If an icon does not exist for a group id, the one for the category that the group is in is used.
I also have a /usr/share/pixmaps/comps/uncategorized.png
that can be used as a fallback if the icon is missing.
Note, however, that to properly implement this, we need the internal IDs of the categories, which dnfdaemon currently does not return anywhere: manatools/dnfdaemon#9 .
It seems like dnfdragora is freezing very often on start. Sometimes it does recover, sometimes it does not. This might be the result of some background operation going on, but since there is no busy indicator (except a spinning wheel) the ordinary user would not know if there is. After some time dnfdragora sometimes starts displaying information on the fact that it is updating repo metadata.
I'm running dnfdragora-1.0.1-1.fc26 with libyui-3.3.2-1.fc26 and dnfdaemon-0.3.17-1.fc26.
I've been using yumex-dnf for a long time and I do not really understand how dnfdragora should work. Some issues:
Why are there dropdown menus on top left and top right? What does the "File" menu do?
What are the drowdown menus in the next line below for?
Why don't you use traditional menus or a GNOME-3ish look and feel with more buttons?
Using on Korora 25 Xfce
dnfdragora.noarch 1.0.1-5.git20170505.2a3b056.fc25
dnfdragora-gui.noarch 1.0.1-5.git20170505.2a3b056.fc25
After running dnfdragora-updater from the menu an icon appears in the notification area. Right click on that icon gives a few options and all work except the final one "Exit". The icon doesn't disappear and remains active, i.e. the other options continue to work.
As I understand it the option in File - Reset the selection should change the selection criteria to the previous state. However I can't get it to work. If I have searched for something and then choose that option nothing changes in the display.
Tested in Korora 26 with version 1.0.1.
Hi. Currently, dnfdragora on Fedora has unlogical GUI due to:
You need to decrease width of individual columns. It will be very great if you take yumex-dnf as an ideal because it has very logical GUI.
Users need to know exactly how much size of package(s) that she/he need to download .....
Best & thank you for your very hard efforts !
Using revision bb6edcf.
The comps groups are shown only with their internal IDs in lieu of names. The user-displayable names are found in gl[1]
, but the code retains only gl[0]
, which is the ID.
Note that for categories, we get something more user-centric because dnfdaemon returns the name
instead of the id
in gl[0]
(which causes other problems, see also #2 and manatools/dnfdaemon#9 ), but we still want gl[1]
, which is the ui_name
.
The ui_name
(gl[1]
) should also be returned in already translated form, but this is not currently happening, I have not checked yet why. (Maybe you have to ask the session daemon rather than the system daemon for the groups? Maybe you should set the locale somewhere?)
As Korora uses Numix-Circle as the default icon theme the developers of the theme were approached to provide a suitable icon. They decided to do as they have done for other package managers and use a symlink to their package manager icon, see numixproject/numix-core#3716 for details.
This works fine for menus and launchers etc.however it breaks the Notifier that appears in the systray area. When the symlink is in place the updated doesn't start. If the symlink is removed and the original icon used the updater will start and will appear in the systray area.
Tested on Korora 25 Xfce with dnfdragora version 1.0.1-5.git20170505.2a3b056.fc25
Where there is currently All -> Installed
I would also like All -> User Installed
which would present those packages normally seen under sudo dnf history userinstalled
- which are of course those packages explicitly installed by the user.
The goal would be to more easily comb through user installed package leaves in order to remove unwanted packages and their dependencies. I find that it's too difficult to do that from the All -> Installed
screen because there are simply too many packages to go through, and there's no good indication of whether you're removing a leaf or a shared dependency.
I regularly use userinstalled
information to build a makeshift "world file" (if you're familiar with gentoo) and then remove the lines of packages that I no longer want and use comm
to basically show me only the packages that I removed from the list, which I then pass through xargs
and then to sudo dnf remove
- this way I can go through and quickly remove things I don't need and/or was just testing.
It would be really nice if I could replace doing that with functionality added by dnfdragora
in such a way that I can view those packages that I've explicitly installed (mainly the point is to exclude deps) and easily uninstall them with the removal functionality that's already present.
Note: Those listed under userinstalled are not necessarily leaves but usually are, as you could have user-installed a package that then became a dependency, and there could be leaves on the system that weren't installed by the user. But, from experience I find that the userinstalled view is the best for managing what to remove.
Hi. 1st I would like to thank you very much for your very hard efforts to evolute dnfdragora. Special thanks for your fix for issue62 (add column size).
Please open attached picture. It is screenshot from my PC.
I put 2 markers: red line & blue line pointing on area where appear "Software manager". I think it will be better to change it into "Packages manager", since software managers (in GNOME, Mint, Ubuntu, ...... etc) do not show all packages. While program like symantic or Yum (DNF) Extender, dnfdragora, ..... show all packages.
Best.
Often when I want to hack on a build that I come across I download the SRPM and run rpm -i <SRPM>
as a normal user. This of course installs the files in the proper build directories in ~/rpmbuild/
. dnfdragora
seems to have been built with the predisposition that all rpms are to be installed as system packages, because presently it asks for root permissions when I click on an SRPM.
Expected results:
dnfdragora
(whether clicking on one or otherwise) it should install it as a normal user and have the same effect as rpm -i
.Hi.
I would like here to suggest on you adding "Advanced Options" in dailog of "User Preferences".
These advanced options should be "front-end" to "dnf-conf". For example: today I set my dnf to use fastest mirror. I enforced to edit system file by:
sudo vi /etc/dnf/dnf.conf
then added following line:
fastestmirror=true
It will be more covenant if dnfdragora has such options like:
Also, you can make "Advanced" options NOT a part of "User preferences" but a separate sections under "Options", so that, when user click on "Options" she/he will see (one under other):
Also, it is useful if you add in dailog of "User Preferences" (but not within advanced options) an option to activate new feature (that I think you are already added) to make dnfdragora manage install of local .rpm package by double click on this local .rpm package.
Best
Best.
Using revision bb6edcf and libyui-qt.
After selecting the first group, I have to click into the package list, then back into the group list to wake it up, then it usually works normally. If I don't do that, if I select another group, the package listing does not update (it still has the first list).
Package version:
dnfdragora-1.0.1-5.git20170505.2a3b056.fc25.noarch
dnfdragora-gui-1.0.1-5.git20170505.2a3b056.fc25.noarch
Error:
An orange dialog window shows and presents the following:
dnfdaemon client error occurred:
g-io-error-quark: GDBus.Error:org.baseurl.DnfSystem.LockedError: dnf is locked by another application (36)
Full console log:
Skipped exception: <[Errno 2] No such file or directory: './dnfdragora.yaml'>
<_M_> [ui] YUILoader.cc:50 loadUI(): DISPLAY: ":0"
<_M_> [ui] YUILoader.cc:51 loadUI(): XDG_CURRENT_DESKTOP: "KDE"
<_M_> [ui] YUILoader.cc:52 loadUI(): YUI_PREFERED_BACKEND: ""
<_M_> [ui] YUILoader.cc:86 loadUI(): User-selected UI-plugin: ""
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-gtk.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-gtk.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-gtk.so.8 in /usr/lib64/yui
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-ncurses.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-ncurses.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-ncurses.so.8 in /usr/lib64/yui
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-qt.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-qt.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-qt.so.8 in /usr/lib64/yui
<_M_> [ui] YUILoader.cc:118 loadUI(): Using UI-plugin: "qt"
<_M_> [ui] YSettings.cc:179 loadedUI(): Set loadedUI to "qt"
<_M_> [ui] YSettings.cc:180 loadedUI(): loadedUI is now locked.
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-qt.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-qt.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-qt.so.8 in /usr/lib64/yui
<_M_> [ui] YUI.cc:76 YUI(): This is libyui 3.3.2
<_M_> [ui] YUI.cc:77 YUI(): Creating UI without threads
<_M_> [qt-ui] YQUI.cc:100 YQUI(): This is libyui-qt 2.47.1
<_M_> [ui] YUI.cc:230 topmostConstructorHasFinished(): Running without threads
<_M_> [qt-styler] QY2Styler.cc:141 loadStyleSheet(): Couldn't open style sheet "/usr/share/libyui/theme/current/wizard/style.qss"
<_M_> [qt-ui] YQUI.cc:296 processCommandLineArgs(): Qt argument: /usr/bin/python3
<_M_> [qt-ui] YQUI.cc:296 processCommandLineArgs(): Qt argument: /usr/bin/dnfdragora
<_M_> [qt-ui] YQUI.cc:439 calcDefaultSize(): Default size: 1344 x 723
<ERR> [qt-ui] YQUI.cc:262 initUI(): Forcing /libQtGui.so.5 open failed
<_M_> [qt-ui] YQApplication.cc:133 loadPredefinedQtTranslations(): Selected language: en_US
<WRN> [qt-ui] YQApplication.cc:137 loadPredefinedQtTranslations(): Qt locale directory not set - no translations for predefined Qt dialogs
<_M_> [qt-ui] YQUI.cc:273 initUI(): YQUI initialized. Thread ID: 0x0x7f3ec1db6700
<_M_> [ui] YSettings.cc:197 loadedUI(): loadedUI: "qt"
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-mga-qt.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-mga-qt.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-mga-qt.so.8 in /usr/lib64/yui
<_M_> [ui] YPath.cc:49 YPath(): Given filename: libyui-mga-qt.so.8
<_M_> [ui] YSettings.cc:74 progDir(): progDir: ""
<_M_> [ui] YPath.cc:65 YPath(): Preferring subdir:
<_M_> [ui] YPath.cc:66 YPath(): Subdir given with filename:
<_M_> [ui] YPath.cc:67 YPath(): Looking for: libyui-mga-qt.so.8
<_M_> [ui] YPath.cc:138 lsDir(): Looking in /usr/lib64/yui
<_M_> [ui] YPath.cc:118 YPath(): Found libyui-mga-qt.so.8 in /usr/lib64/yui
<_M_> [ew] YExternalWidgets.cc:37 YExternalWidgets(): Creating Libyui External Widgets object
<_M_> [mga-qt-ui] YMGA_QCBTable.cc:74 YMGA_QCBTable(): Slection mode 2
dnfdaemon client error: g-io-error-quark: GDBus.Error:org.baseurl.DnfSystem.LockedError: dnf is locked by another application (36)
<_M_> [ui] YUILoader.cc:163 deleteUI(): Shutting down UI
Closing dnfdragora
<_M_> [ew] YExternalWidgets.cc:116 ~YExternalWidgetsTerminator(): Shutting down mga External Widgets
<_M_> [ew] YMGAWidgetExtensionFactory.cc:49 ~YMGAWidgetFactory(): Factory removed
Temporary resolution:
systemctl stop dnfdaemon
Then start dnfdragora
again, and it works ok.
Only error associated with dnfdaemon log (not sure if related or not)
May 07 07:54:10 icarus.net.overtmind.com dnfdaemon-system[23070]: The 'group_persistor' function is not a part of DNF API and will be removed in the upcoming DNF release. Please use only officially supported API functions. DNF API documentation is available at https://dnf.readthedocs.org/en/latest/api.html.
When starting with the '--update-only' dnfdragora is locked in that mode. When updating is complete or if no updates are found it should be possible to search or carry out any other function.
Duplicated from Mageia downstream bug filed by @papoteur-mga:
A newbie can be lost with a long list of repositories, for example when he want enable tainted repository.
I suggest that the screen to enable/disable repositories can be of two levels, one standard and one advanced.
I suggest that the repositories are displayed according two skill levels, for chosing which will be enabled.
In the standard level, only the specific arch would be displayed, without debuginfo, nor source.
In expert level, all repositories would be displayed.
the display would be a table combined with tabs.
Hi. Currently, after user type a search item(s), she/he need to click on "search" within dnfdragora GUI to activate searching process. It will be very useful & convenient to make it possible to activate searching process by hit (click) the key "enter" of keyboard. This already a feature in yumex-dnf ....
Best.
On Fedora 26.
on_TransactionEvent download
dnfdaemon client error: g-io-error-quark: GDBus.Error:org.freedesktop.DBus.Python.TypeError: Traceback (most recent call last):
File "/usr/lib64/python3.6/site-packages/dbus/service.py", line 707, in _message_cb
retval = candidate_method(self, *args, **keywords)
File "/usr/lib/python3.6/site-packages/dnfdaemon/server/init.py", line 83, in newFunc
rc = func(*args, **kwargs)
File "/usr/share/dnfdaemon/dnfdaemon-system", line 537, in RunTransaction
result = self.run_transaction()
File "/usr/lib/python3.6/site-packages/dnfdaemon/server/init.py", line 555, in run_transaction
self.base.download_packages(to_dnl, self.base.progress)
File "/usr/lib/python3.6/site-packages/dnf/base.py", line 1011, in download_packages
progress.start(len(payloads), est_remote_size, total_drpms=total_drpm)
TypeError: start() got an unexpected keyword argument 'total_drpms'
(36)
<M> [ui] YUILoader.cc:163 deleteUI(): Shutting down UI
Closing dnfdragora
<M> [ew] YExternalWidgets.cc:116 ~YExternalWidgetsTerminator(): Shutting down mga External Widgets
<M> [ew] YMGAWidgetExtensionFactory.cc:49 ~YMGAWidgetFactory(): Factory removed
Hi. I'm on Fedora 26 X64 bit Cinnamon edition. I added external repository (repository of "Ring" messenger) as following:
sudo dnf config-manager --add-repo https://dl.ring.cx/ring-nightly/fedora_27/ring-nightly.repo
sudo dnf install ring
Please see:
https://ring.cx/en/download/gnu-linux
Repository added O.K & I receiving updates ......
But I noticed that this package "ring" not appear in search result of dnfdragora when I searched it !!
Please your kind investigation about this strange phenomenon.
Best.
Please provide a startup preference to select the mode to start in. An option to check for updates of startup as per Yumex-dnf would be preferable. This would also provide a faster startup.
As an aside starting in Group mode adds additional overhead which slows the startup so that dnfdragora compares poorly to yumex-dnf. Group mode seems a poor choice for the default mode.
Repositories like rpmfusion, negative17, corp ...?
Please add support for installing a local RPM file passed on the command line, looking in the repositories for any missing dependencies, together with a file association for RPM files. That allows installing an RPM from a browser (e.g., the *-release
RPM that configures a repository, to bootstrap a repository) without going through the CLI. (This is one of the features Apper had that dnfdragora is still missing.)
The required dnfdaemon support should already be there, because yumex-dnf -I /path/to/some.rpm
works. As far as I can tell, you just have to pass the full path to the file instead of a package name to the dnf(daemon) install command.
Note that unlike yumex-dnf, I would suggest just treating any non-option argument as an RPM file (dnfdragora /path/to/some.rpm
) instead of requiring -I
, it makes the file association simpler.
It's around 60 seconds every time dnfdragora is started. There must be a better way!
When dnfdragora update notifier is in the panel on KDE Plasma a tooltip appears on mouse over identifying dnfdragora. However when used on Xfce there is no such identification. Actually dnfdragora is the only item in my Xfce systray that doesn't display a tooltip on mouse over.
Both systems are Korora 25 running dndragora 1.0.1-5.git20170505.2a3b056.fc25, the latest version from the Fedora repos.
This is a warning in the console. Probably is error in libYui
but but I just wanted to mention it.
(python3:29016): Gtk-WARNING **: Allocating size to YGtkAdjSize 0x5615e438a4e0 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?
I'm running Fedora 25.
#Steps to reproduce:
Please also have a look at timlau/yumex-dnf#74
I don't know how it is called, but this is the YGtkRichText
which shows package name, description, URL, dependencies (on click), file list (on click)
GtkFrame
)YGtkTreeView
This is the widget containing the Item "All" by default and e.g. "Search results" after a search.
GtkComboBox
esThe widgets for selecting "All" or "Group", architecture, name:
When one of these comboboxes changes, it will immediately trigger a new search. This disturbes the user workflow since it blocks all UI.
Two possible solutions:
Most GNOME 3 applications use a style where buttons would have either icons or text. The "Search" button should use a different icon ('edit-find' icon name) and be visually connected to the search field and should only show an icon.
Also, this button does expand horizontally, which doesn't look nice.
Gtk+ 3.x provides a GtkEntry which already has a "primary-icon" and "secondary-icon" property for adding a convenient delete button. This does not need extra text but can be shown inside the GtkEntry itself.
Also, this button does expand horizontally, which doesn't look nice.
If you'd use a GtkSearchEntry, you would get a nice shiny search icon.
YGtkTreeView
These buttons expand horizontally, which doesn't look nice.
One can resize the windows (main window, "Repository Management" window, "User preferences" window) to be so small that it cannot be used any more and can barely seen at all. This is inconvenient. A window should always allocate the size it needs to show all its child widgets. If there is not enough space, think twice about your UI. If the widgets still don't fit the screen, use a GtkScrolledWindow.
Also, windows should not be larger than their content. If you resize the "Repository Management" or "User preferences" windows, they don't show more content.
Putting the options below each other (instead of besides each other) would look nicer.
gtk3-3.22.12-2.fc25.x86_64
dnfdragora-1.0.1-5.git20170505.2a3b056.fc25.noarch
libyui-gtk-2.44.9-2.fc25.x86_64
I would love to check for updates on a schedule, but have the tray icon 'hidden' when no updates are available.
KDE has 3 'modes' for system tray icons: Auto, Shown, Hidden.
When no updates are available, the tray icon should be in 'hidden' mode. When an update is available, it should be in 'shown' mode.
This way it becomes obvious when updates are available.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.