rpm-software-management / dnf5

Next-generation RPM package management system
Other
249 stars 85 forks source link

Listing libdnf5 plugins #1335

Open glum23 opened 7 months ago

glum23 commented 7 months ago

Is there an easy way how to list all currently enabled plugins? If not, it should be implemented and documented. For dnf4, it was possible to list them e.g. via dnf -v repolist. (Going through configs in /etc/dnf/libdnf5-plugins/ is not supposed to be the requested easy solution.)

ppisar commented 7 months ago

Loaded plugins are logged into /var/log/dnf5.log:

2024-03-21T10:13:25+0000 [16009] DEBUG Loading plugin file="/usr/lib64/dnf5/plugins/builddep_cmd_plugin.so"
2024-03-21T10:13:25+0000 [16009] INFO Loaded dnf5 plugin "builddep" ("/usr/lib64/dnf5/plugins/builddep_cmd_plugin.so") version "1.0.0"
2024-03-21T10:13:25+0000 [16009] DEBUG Loading plugin file="/usr/lib64/dnf5/plugins/changelog_cmd_plugin.so"
2024-03-21T10:13:25+0000 [16009] INFO Loaded dnf5 plugin "changelog" ("/usr/lib64/dnf5/plugins/changelog_cmd_plugin.so") version "1.0.0"
2024-03-21T10:13:25+0000 [16009] DEBUG Loading plugin file="/usr/lib64/dnf5/plugins/config-manager_cmd_plugin.so"
2024-03-21T10:13:25+0000 [16009] INFO Loaded dnf5 plugin "config-manager" ("/usr/lib64/dnf5/plugins/config-manager_cmd_plugin.so") version "0.1.0"
2024-03-21T10:13:25+0000 [16009] DEBUG Loading plugin file="/usr/lib64/dnf5/plugins/copr_cmd_plugin.so"
2024-03-21T10:13:25+0000 [16009] INFO Loaded dnf5 plugin "copr" ("/usr/lib64/dnf5/plugins/copr_cmd_plugin.so") version "0.1.0"
2024-03-21T10:13:25+0000 [16009] DEBUG Loading plugin file="/usr/lib64/dnf5/plugins/needs_restarting_cmd_plugin.so"
2024-03-21T10:13:25+0000 [16009] INFO Loaded dnf5 plugin "needs_restarting" ("/usr/lib64/dnf5/plugins/needs_restarting_cmd_plugin.so") version "1.0.0"
2024-03-21T10:13:25+0000 [16009] DEBUG Loading plugin file="/usr/lib64/dnf5/plugins/repoclosure_cmd_plugin.so"
2024-03-21T10:13:25+0000 [16009] INFO Loaded dnf5 plugin "repoclosure" ("/usr/lib64/dnf5/plugins/repoclosure_cmd_plugin.so") version "1.0.0"

We also report the plugins with --version:

# dnf5 --version
dnf5 version 5.1.15
dnf5 plugin API version 1.0
libdnf5 version 5.1.15
libdnf5 plugin API version 1.0

Loaded dnf5 plugins:
  name: builddep
  version: 1.0.0
  API version: 1.0

  name: changelog
  version: 1.0.0
  API version: 1.0

  name: config-manager
  version: 0.1.0
  API version: 1.0

  name: copr
  version: 0.1.0
  API version: 1.0

  name: needs_restarting
  version: 1.0.0
  API version: 1.0

  name: repoclosure
  version: 1.0.0
  API version: 1.0

I think the --version option could satisfy you.

glum23 commented 7 months ago

Thanks, however, it does not work for libdnf5 plugins.

# rpm -q libdnf5-plugin-actions
libdnf5-plugin-actions-5.1.15-20240325004923.23.ge0ae9be5.fc39.x86_64
# cat /etc/dnf/libdnf5-plugins/actions.conf
[main]
name = actions
enabled = 1
# dnf5 --version | grep actions
# 

The info related to the libdnf5 actions plugin is not present in /var/log/dnf5.log either. Any other suggestions? Or would you mind reopening this issue?

ppisar commented 7 months ago

Indeed. I will reopen this issue specifically for libdnf5 plugins.

jrohel commented 5 months ago

@glum23

The info related to the libdnf5 actions plugin is not present in /var/log/dnf5.log either.

That's weird. Info in the log should be. Example from the log (actions plugin is mentioned):

2024-05-09T11:48:55+0000 [382442] DEBUG Loading plugin file="dnf5-plugins/config-manager_plugin/config-manager_cmd_plugin.so"
2024-05-09T11:48:55+0000 [382442] INFO Loaded dnf5 plugin "config-manager" ("dnf5-plugins/config-manager_plugin/config-manager_cmd_plugin.so") version "0.1.0"
2024-05-09T11:48:55+0000 [382442] DEBUG Loading plugin library file="libdnf5-plugins/actions/actions.so"
2024-05-09T11:48:55+0000 [382442] INFO Loaded libdnf plugin "actions" ("libdnf5-plugins/actions/actions.so"), version="0.3.0"