Description
Implement libdnf5 API
This PR intends to discuss the next steps regarding the integration of the libdnf5 API in Python to replace the current use of dnf commands. Additionally, it proposes phasing out the dnf5 plugin to accommodate the expansion to more commands beyond package management, as nvidia-open
etc.
Open GPU kernel modules versus Proprietary drivers
https://github.com/NVIDIA/open-gpu-kernel-modules
Motivation:
Flexibility: The libdnf5 API offers a more flexible and programmable approach, allowing us to add new features and commands without relying on external command-line tools.
Future Expansion: Moving away from dnf5 plugins will open the door for broader functionality beyond the scope of traditional dnf operations.
https://dnf5.readthedocs.io/en/latest/api/index.html
https://github.com/rpm-software-management/dnf5/tree/main
Implement libdnf5 API:
Transition from using dnf at the command level to utilizing the libdnf5 API in Python.
This change is aimed at making the tool more adaptable for future developments and expanding beyond package management.
Next Steps:
Begin the integration process by replacing existing dnf command calls with corresponding libdnf5 API calls.
Gradually phase out the dnf5 plugin while ensuring backward compatibility during the transition period.
Document the new API usage and update any related documentation or scripts.
With the flexibility of the API, adding more features to configure repositories and packages becomes straightforward. For example, enabling Fedora Rawhide repositories.