Simplifying Package Submission Progress (15 July – 22 July) – GSoC ’25

Originally published at: Simplifying Package Submission Progress (15 July – 22 July) – GSoC ’25 – Fedora Community Blog

Hi, I am Mayank Singh, welcome back to this blog series on the progress of the new package submission prototype, if you aren’t familiar with the project, feel free to check out the previous blogpost here.

Extending Forgejo support

As Forgejo is expected to become the git forge for Fedora in future and based on community discussions. I thought it did be great to support Forgejo in this project.

packit-service supports both GitLab and GitHub thanks to OGR library. It provides a unified interface for interacting with git forges.
The library has a good support for GitHub and GitLab features but the Forgejo integration is still not quite on par with them, few important functions like adding comments and reactions are still missing.
I worked on adding the support for the necessary parts so that packit-service can work with Forgejo.
There are few bugs related to serialization in the code, which I plan to fix this week.

New Package Builds from New Pull Requests

I’ve added a simple handler to read from a new Pull Request and its description to parse packit commands. This allows users to trigger a build for a new package without needing a packit configuration file in the repository.

For example, adding this line the PR description will trigger a new build for this particular package name.

/packit copr-build package_name: <libexample>

The system dynamically constructs a minimal package config and feeds it into Packit’s internal build logic. Test jobs are expected to work as well, although this is yet to be fully verified.

The current implementation is a quick prototype that reuses as much of the existing packit-service logic as possible. There’s still more work to be done around building the full package context.
My mentor has also shared feedback suggesting a cleaner approach, which I’ll be iterating on in the next phase.

What’s Next?

  • Fix remaining serialization bugs.
  • Build and test the Testing Farm integration for running test jobs on the built packages.
  • Improve the source handling logic based on recent feedback.

Thanks for reading and stay tuned for more next week.