[Rpm-ecosystem] rpm-ostree's usage of libhif/hawkey merge

Neal Gompa ngompa13 at gmail.com
Tue Jan 26 20:32:04 UTC 2016

On Tue, Jan 26, 2016 at 1:12 PM, Colin Walters <walters at verbum.org> wrote:
> On Tue, Jan 26, 2016, at 12:54 PM, Neal Gompa wrote:
>> Well, if you keep altering all the interfaces, especially the public
>> ones used by PackageKit and DNF, then there will be problems for
>> developers and consumers of these programs.
> What I'm trying to say is that given we know we need to break
> APIs for two reasons:
>  1) To merge libhif/hawkey
>  2) To expose more lower-level APIs for rpm-ostree
> (At least those two)
> There's going to be a lot of churn.  My offhand take here is
> that both rpm-ostree and PackageKit should embed libhif,
> and we collaborate on reviewing patches upstream, but
> accept temporary levels of forking.
> koschei should stick with hawkey-python for now.

If we can consider that hawkey-python is essentially frozen API wise
(or at least pretty much remaining compatible), then it may work
temporarily for Koschei and DNF, as DNF currently consumes the hawkey
Python API, rather than the C API.

> dnf is the hard one, particularly given the desire to better
> integrate PK and dnf (and the whole daemon vs not daemon thing).
> Maybe they could try having a branch that uses a new libhif?
> I think in practice it'd be better to have finalized some of the concepts
> of the C API before we start trying to rebase dnf on libhif.
> But I'm just making things up here.

Honestly, at this point, I'm wondering why we don't just rename libhif
to libdnf (or something else, but DNF would be the primary consumer).
Now that the hawkey/hif merger is (mostly) complete and it's one
library that was ultimately designed to be the foundations of both DNF
and PackageKit frontends, I think it would make sense to call it
libdnf from this point on. That would allow the hif backend to remain
frozen at 0.2.0 and the new integrated code could be a new library.
DNF would also eventually migrate from the hawkey python API to the
libdnf gi based API in Python.

>> That's uncalled for there.
>> I have spent the last four months painstakingly working on integration
>> of DNF into Mageia[1] and I've also been working for the last three
>> months on integration of the stack for Unity Linux, and I have indeed
>> committed code to DNF and its various plugins repositories.
> Okay.  I had only seen you comment once or twice.  I felt your response
> was not addressing my concerns - in fact you skipped over the fact
> that I have multiple outstanding PRs to libhif that were linked in
> the original message.

Perhaps there needs to be more aggressive work on the new code to
address your concerns. Do you talk to Richard much about this?

真実はいつも一つ!/ Always, there's only one truth!

More information about the Rpm-ecosystem mailing list