Skip to content

Interface for Hydra and Cuirass (Nix and Guix build farms)

Notifications You must be signed in to change notification settings

alezost/build-farm.el

Repository files navigation

https://img.shields.io/badge/license-GPL_3-orange.svg http://melpa.org/packages/build-farm-badge.svg http://stable.melpa.org/packages/build-farm-badge.svg

About

Emacs-Build-Farm is an Emacs interface for Hydra and Cuirass — build farms for Nix and Guix package managers, i.e., for:

https://hydra.nixos.orgHydra for Nix
https://hydra.gnu.orgHydra for Guix
https://berlin.guixsd.orgCuirass for Guix

This package allows you to look at builds, jobsets, evaluations and projects of these build farms.

Installation

Emacs-Build-Farm can be installed using Guix or from MELPA.

Guix

Just use:

guix package -i emacs-build-farm

MELPA

If you added “melpa” or “melpa-stable” archives to package-archives as it is described on the MELPA Getting Started page, you can install “emacs-build-farm” using M-x package-install or M-x list-packages commands.

Usage

The entry point for the available features is M-x build-farm command. It provides a magit-popup interface to display evaluations, builds, jobsets and projects.

Alternatively, you can use the following M-x commands directly:

  • build-farm-projects
  • build-farm-project
  • build-farm-jobsets
  • build-farm-latest-evaluations
  • build-farm-latest-builds
  • build-farm-queued-builds
  • build-farm-build

Keys in “list” buffers

Most of the above commands show “list” buffers (list of builds, etc.). These lists provide some key bindings, the main of which are:

  • h (hint): allows you to look at the provided key bindings;
  • RET: displays “info” buffer for the current entry or several marked entries (marked with m key).

Differences between Cuirass and Hydra

In the beginning there was Nix, and Hydra was its build farm. Then there appeared Guix which is technically very similar to Nix, except it is written in Guile. At first, Guix also used Hydra. Then Guix decided to make its own build farm, also written in Guile. So there appeared Cuirass. And Cuirass was very similar to Hydra, but afterwards it diverged quite a lot.

In particular, Cuirass does not have a notion of “project” anymore. Hydra has “projects” and “jobsets” inside each project. But Cuirass decided that projects are not needed, so it has only “jobsets”.

About

Interface for Hydra and Cuirass (Nix and Guix build farms)

Topics

Resources

Stars

Watchers

Forks

Packages