Neovim nightly rpms for Fedora

I’ve made nightly builds of neovim git master available:

sudo dnf copr enable agriffis/neovim-nightly
sudo dnf upgrade neovim python{2,3}-neovim

The builds run at 4am ET daily, if there are changes on the upstream master branch since the previous build.

How it works

Fedora Copr is a build server where anybody can build and share rpms, similar to Ubuntu Personal Package Archives. You can configure Copr to use rpkg, which builds an rpm from an Internet-hosted git repository. You can even set Copr to build automatically via web hook when you push to GitHub.

The tricky bit is that most upstream repos don’t have a spec file. So here’s what I did:

  1. Fork the upstream repo, add a copr branch
  2. Set up Copr to build with rpkg via GitHub web hook
  3. Add a spec file to the copr branch and push it to trigger the build
  4. Cron job to merge from upstream, update the spec and rebuild

My crontab looks like this:

MAILTO=aron@scampersand.com
SHELL=/bin/bash
PATH=/home/aron/bin:/home/aron/.local/bin:/usr/local/bin:/usr/bin

# Long-running SSH agent so nightly builds can push to GitHub
@reboot ssh-agent | grep export > .ssh/agent

# Run the build at 4am ET
0 4 * * * nightly-copr.bash src/copr-builds/neovim

You can find the branch on GitHub and the builds in Copr. And if you want to know more about the nightly builds, you can find the scripts in my rpm-tools repository.

See also: Neovim nightlies revisited.