Comments (3)
Hi, we are happy that you are interested in developing a wrapper.
From your use case, I would suggest using the new project, dnf5. Dnf5 is proposed to replace dnf from fedora 39, so we would really appreciate seeing the development of the community shifting towards the new component.
It is already included in fedora (since 38, current rawhide) so, and we provide a copr repo for stable fedora.
copr: https://copr.fedorainfracloud.org/coprs/rpmsoftwaremanagement/dnf5-unstable/
codebase: https://github.com/rpm-software-management/dnf5
docs: https://dnf5.readthedocs.io/en/latest/
What would be my language choices? (so far I think only C++ and Python3)
You could choose C++, Python3 or any of the bindings (Perl, Ruby). I would suggest taking a look at the documentation
tutorial: https://dnf5.readthedocs.io/en/latest/tutorial/index.html
What other transitives dependencies would I need on my system if I decide to go for C++?
requirements: https://dnf5.readthedocs.io/en/latest/tutorial/install-build-deps.html
I hope this would be helpful for you.
from libdnf.
Thanks for the detailed answer. This seems to cover all the questions I had regarding the project, plus the tutorial will go a long way in helping me develop the wrapper.
I think I'll just opt for C++ for the project itself. (Maybe we'll see Rust bindings at some point?)
Thanks again for your time, we can mark this as closed.
from libdnf.
Glad to be helpful!
I think I'll just opt for C++ for the project itself. (Maybe we'll see Rust bindings at some point?)
We rely on SWIG to generate bindings. I am not sure about how is the rust support at the moment.
Please don't hesitate to reach out again if you have issues using dnf5.
from libdnf.
Related Issues (20)
- [DNF5] Problem: The operation would result in removing of running kernel: kernel-core-0:5.18.15-100.fc35.x86_64 HOT 1
- No way to build this without dnf already installed HOT 1
- Tests fail: LibraryException is thrown because of failing regular expression HOT 1
- RFE: support `upgrade-minimal --advisories <errata>` in Python bindings HOT 3
- libdnf doesn't properly support multiple gpg public keys in repo config files, breaking microdnf HOT 3
- Verify repodata integrity HOT 3
- RFE: zstd metadata support HOT 2
- Make libdnf read environment variables HTTP_PROXY and HTTPS_PROXY for global proxy configuration HOT 4
- System repo opening issue with Packagekit (only) HOT 1
- gpgme does not install gpgme-config by default HOT 4
- lockfiles are not robust to corruption
- segfault when encountering WAL error in /var/lib/dnf/history.sqlite HOT 9
- Tests throw exception: "trailing backslash (\\)" HOT 2
- libdnf5 (python): `TransactionItem.get_reason_change_group_id()` is always empty? HOT 2
- Countme should report system age, not repository age HOT 14
- Weblate translation pulling HOT 3
- 0.71.0: test suite is failing in `test_libdnf_main` unit HOT 8
- Implement versionlock as a plugin for use in PackageKit HOT 2
- A pull request into rhel-8.10 branch executes CI tests on Fedora 38
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libdnf.