This is a part of the FESCo Elections Interviews series. Voting is open to all Fedora contributors. The voting period starts on Thursday, 6 June and closes promptly at 23:59:59 UTC on Thursday, 20 June 2019.

Interview with Fabio Valentini

  • Fedora Account: decathorpe
  • IRC: decathorpe (found in #fedora-stewardship #fedora-meeting*)
  • Fedora User Wiki Page

Questions

Describe some of the important technical issues you foresee affecting the Fedora community. What insight do you bring to these issues?

Assuming the past few months provide any insights for the future, I think there are some big issues the Fedora community will need to tackle soon. The biggest one is probably the retirement of almost all packages depending on python2. The golang stack is also in the process of completely modernizing its packaging, with packaging guidelines for Go and new tooling finally being in place. Another one is the increasing modularization of parts of fedora, despite the fact that not all of the necessary tooling and policies are in place yet.

As part of the work of phasing out python2, I worked on a few packages myself, and have contributed to the details of the current process as a member of the Packaging Committee. I am also a member of the go SIG, where I help with modernizing the almost 800 go packages in Fedora. Concerning the issues around the modularization effort, I took a more active role (and founded the Stewardship SIG).

What objectives or goals should FESCo focus on to help keep Fedora on the cutting edge of open source development?

For example, I think fedora Silverblue is a really exciting project, especially for long-term deployments of fedora (with “fearless” upgrades hopefully completely obsoleting the need to reinstall). Additionally, the possibility of finally running sandboxed desktop / user-space applications with flatpak (or other container technologies) might be a big win for Linux desktop security, usability, and ease of application portability / distribution.

What are the areas of the distribution and our processes that, in your opinion, need improvement the most? Do you have any ideas how FESCo would be able to help in those “trouble spots”?

When working on the three issues I mentioned above (python2 retirement, golang packaging modernization, Stewardship SIG), some recurring patterns emerged.

For example, there is little to no tooling support (or official data) for some regular tasks, like querying a list of binary packages built from a given source package, or determining the complete dependency graph of a package (requires and required-by directions) correctly.

But the worst issue probably was the abundance of effectively unmaintained packages and/or unresponsive maintainers, especially within the Java stack. However, following the “Unresponsive Maintainer” process for all the affected packages would be a tedious, protracted chore for little benefit – getting the packages orphaned. These packages often haven’t been touched in years and are often severely outdated or broken, but continue to be built and included in Fedora.

I think the policies for retirement of long-term orphaned, FTBFS, FTI packages need to be enforced (more strictly) – even if that means that fedora might lose hundreds of unmaintained and/or broken packages. Still, reducing the package set might be our only hope to maintain our high standards regarding package quality, and the health of Fedora as a distribution and ecosystem overall.