Fzf available for EPEL 9

I’m happy to announce that fzf, the general-purpose command-line fuzzy finder, has now been built for EPEL 9! So if you’re running CentOS Stream, RHEL, Alma, Rocky, or Oracle Linux, you’ll soon be able to sudo dnf install fzf and use it.

Or, to get it in faster, help test it now:

https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2023-81fce17ce9

It should hit testing tonight, but if you can’t wait, this will work now that the package is signed

$ koji download-build -a x86_64 -a x86_64 --key=3228467c fzf-0.44.1-1.el9
$ sudo dnf install ./fzf-0.44.1-1.el9.x86_64.rpm

(not specifying the key id will result in the unsigned package to be downloaded)

There were some issues encountered during the process, thanks to @gotmax23, @qulogic, and @alexsaezm for the assistance in triaging and fixing the issues:

  • RHEL 9.3’s go-rpm-macros are broken and GO111MODULE=off is no longer set, resulting in some packages trying to fetch dependencies from the Internet during the build process. Being worked around in go-rpm-macros-epel until it can be fixed properly for RHEL 9.4. Loading...

  • golang-x-vuln had a buggy build untagged but the commit was not reverted, resulting in some confusion figuring out why the EPEL build initially cannot be used. Will be following up with FESCo to see if we can have a policy about reverting commits if the matching build is buggy (and what to do with RPM autospec in that case)

  • speaking of rpmautospec, some builds for some reason have their release number not reset to 1 when the version is bumped – and the changelog entry matching the wrong release is not labeled with version-release as usual. Even more weirdly for at least one package the earlier Rawhide build was fine but any rebuild now shows that issue. According to infra nothing changed recently…

2 Likes

Great work! :grinning: Is there any chance of it getting into EPEL 8 as well? Let me know if I can help out in any way

I’ll be happy to review any PRs, but given my company has almost completed our migration away from EL8 I can’t really justify spending too much time on it, sorry!

(For the Rust ecosystem, for EL8 we need to vendor instead of build individual crates, since dynamic build requirement macros don’t work. I suspect it’s the same for Golang too)


Any time spent learning fzf Is time well spent in my book !

1 Like