Bodhi 3


Bodhi 3.0.0 was released and deployed to production a few weeks ago, but I wanted to give it the dignity of a blog post since it is a pretty significant milestone in the project's history. Bodhi 3.0.0 is the first Bodhi release that fully supports a non-RPM content type with the addition of the ability to mash modules.

The implementation of the new masher has several benefits:

  • Module mashing
  • Switch from mash to pungi, which is a more active project.
  • Via pungi, rich dependencies, are now supported, which enables packagers to more correctly express dependencies in existing packages, but also enables packagers to add Rust packages to Fedora.
  • OSTrees are now made the same way on release day and in the updates that follow.

This was a truly collaborative effort, and thanks go to Patrick Uiterwijk, Adam Miller, Dusty Mabe, and Kushal Das for bringing Pungi into Fedora.

Due to its backwards incompatible changes, Bodhi 3.0.0 will only be released to Rawhide, but it is available in my bodhi Copr repository if you would like to use it on Fedora 25-27.


There is also a 3.1.0 beta in the works. This release is a bit larger of a diff than I typically release due to the modular mashing work and the infrastructure freezes we've been in for Fedora 27. Due to the complexity of the Pungi change, I decided to hold most patches written over the past few months for a post-pungi release so that the pungi change could get its own release by itself to reduce the complexity of the change. Due to this, 3.1.0 has some patches that were written in August. You can read the release notes to see all the changes, and if you are interested in trying it out, it is available for install from my bodhi-pre-release Copr repository