Fun with yggdrasil packages

To use the katello pull provider, a package called yggdrasil needs to be installed.

It needs:

Unfortunately, there is a another package in debian /ubuntu called yggdrasil:

Ubuntu: https://ubuntu.pkgs.org/22.04/ubuntu-universe-amd64/yggdrasil_0.4.3-2_amd64.deb.html
Debian: Debian -- Package Search Results -- yggdrasil

Even more fun, in EPEL there is a version of yggdrasil which is the Redhat one but its not compatible with the required foreman yggdrasil version 0.2.0:
https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/Packages/y/yggdrasil-0.3.2-2.el9.x86_64.rpm

Ideas how to solve this?

The yggdrasil we use is in the Foreman Client repository. I wouldn’t try to use any other one.

Not sure about the conflict, though.

cc @evgeni

I have no idea what you’re talking about. :stuck_out_tongue:

@aruzicka then?

I’m not sure we actually tested pull provider with Debian at all…

I’m aware of existence of the other yggdrasil, but neither “our” yggdrasil nor the other yggdrasil is really ours.

Yeah, yggdrasil doesn’t really do semver so things are a bit tricky with compatibility and keeping up.

Considering we don’t package it I would say no. otoh it is written in go, so one could assume that the binary that gets built should be able to run anywhere as long as the os family and machine architecture matches, but such deployments are left as an exercise to the users.

To solve the naming conflict, we could rename the package we ship, but that feels like it would cause even more pain for everyone involved.

To solve the incompatibility, we could update our worker to be compatible with the latest, but I’d still be hesitant to depend on a package we have no control over (the one from EPEL) as it can change any time without us having time to react to it.

Well, “we” ship the yggdrasil package for Debian / Ubuntu: Index of /Debian12/pool

But, as mentioned, the issue is in EPEL, too because of the old version.
Additionally, sooner or later the “other” yggdrasil go package which is curenntly only available for debian/ubuntu might even be packages for EPEL, EL or SUSE. Which will just be a pain.

Maybe its better to find a “better” soon-ish.

TIL

I somewhat doubt that, but it is a possibility, yes.

I’m open to suggestions.

For Debian/Ubuntu we renamed the package to yggdrasil-mqtt to make sure, we have no conflict with yggdrasil.

1 Like