Hydra
github.com
What it is
Hydra is a continuous integration service for projects based on Nix. It checks out project source periodically or continuously, builds it, runs tests, and produces reports. Work is organized into jobsets whose inputs can trigger builds when they change; jobsets can also depend on one another. Flake jobsets are supported when their outputs expose a hydraJobs attribute set. Jobs can produce packages, ISO images, or tarballs, and jobset inputs can use Git checkout sources. Hydra also provides a JSON API. It is aimed at Nix and NixOS package developers, not people who only need to use NixOS. Hydra is open source under GPL-3.0 and listed at free. It is self-hosted, with no hosted option listed, and running it is currently supported only on NixOS; the repository recommends the NixOS module for production. Flake evaluation is restricted from accessing files outside the Nix store. Some state is stored in the database, so backups are needed, and the wiki reports that hydra-queue-runner can sometimes leave queued builds unscheduled.
Spec sheet
- What it does
- Hydra is a continuous-integration service for projects based on Nix.Read 14 Oct 2026 · github.com
- Purpose
- Hydra is a continuous integration service for Nix based projects.Read 4 Oct 2026 · github.com
- Intended users
- Hydra is intended for Nix and NixOS package developers and is not needed simply to use NixOS.Read 4 Oct 2026 · wiki.nixos.org
- Deployment
- The repository says running Hydra is currently only supported on NixOS and recommends the NixOS module for production.Read 4 Oct 2026 · github.com
- API
- The repository includes a JSON API specification in hydra-api.yaml and points users to Swagger Editor for exploration.Read 14 Oct 2026 · github.com
- Integrations
- Hydra jobset inputs can use Git checkout sources, and the documented examples use GitHub repositories.Read 4 Oct 2026 · github.com
- License
- Hydra is distributed under the GNU General Public License version 3.Read 14 Oct 2026 · github.com
- API surface
- The hydra-api.yaml file contains 1,267 lines, including 1,220 lines of code.Read 14 Oct 2026 · github.com
- Binary cache
- Successful builds become substitutable store paths that can feed a binary cache.Read 14 Oct 2026 · zemdregon.github.io
- Build model
- Hydra evaluates Nix expressions into derivations and builds them on configured machines.Read 14 Oct 2026 · zemdregon.github.io
- Build outputs
- A Hydra build is an instantiated job such as a package, ISO image, or tarball.Read 14 Oct 2026 · wiki.nixos.org
- Build products
- Hydra can build jobs such as packages, ISO images, and tarballs as part of a jobset.Read 4 Oct 2026 · wiki.nixos.org
- Builds and tests
- Hydra periodically or continuously checks out project source, builds it, runs tests, and produces reports.Read 4 Oct 2026 · wiki.nixos.org
- Checks distinction
- Hydra does not use a flake's checks output as its job tree; checks are generally local or forge-CI gates.Read 14 Oct 2026 · zemdregon.github.io
- Database dependency
- A self-hosted deployment uses PostgreSQL for persistent Hydra state.Read 14 Oct 2026 · zemdregon.github.io
- Declarative configuration
- Hydra supports both imperative and declarative project and jobset configuration.Read 14 Oct 2026 · wiki.nixos.org
- Documentation
- The project links to a Hydra User's Guide, NixOS Wiki material, hydra-cli, and a build-farm setup presentation.Read 14 Oct 2026 · github.com
- Evaluations
- An evaluation interprets Nix code into derivation files that define the build jobs.Read 14 Oct 2026 · wiki.nixos.org
- Flake support
- For flakes, Hydra consumes the hydraJobs output attribute as its job tree.Read 14 Oct 2026 · zemdregon.github.io
- Flakes
- Hydra supports Flake jobsets whose outputs expose a hydraJobs attribute set.Read 4 Oct 2026 · wiki.nixos.org
- Foundation operations
- The NixOS Foundation says its Hydra build farm has hundreds of macOS, x86-64 Linux, and aarch64 Linux build cores and executes more than 350,000 builds weekly.Read 14 Oct 2026 · nixos.org
- Independent review coverage
- G2's Hydra page says it does not have enough reviews to provide buying insight; the listing is for a project-management product rather than NixOS Hydra.Read 14 Oct 2026 · g2.com
- Independent technical assessment
- An independent Nix documentation site describes Hydra as heavyweight for self-hosting and suggests lightweight forge CI for most application repositories.Read 14 Oct 2026 · zemdregon.github.io
- Jobsets
- Jobsets combine inputs with a Nix expression and can re-evaluate when inputs change.Read 14 Oct 2026 · wiki.nixos.org
- Known issue
- The wiki reports that hydra-queue-runner can sometimes get stuck while builds remain queued and unscheduled.Read 4 Oct 2026 · wiki.nixos.org
- Limit: database contention
- A Hydra issue reports that evaluating very large jobsets can lock the builds table and delay queue-runner updates for around 30 minutes.Read 14 Oct 2026 · github.com
- Limit: disk usage
- A Hydra issue documents recurring disk-space pressure involving build logs, PostgreSQL, the Nix store, and caches.Read 14 Oct 2026 · github.com
- Limit: large Git inputs
- The NixOS Wiki says the default 600-second Git timeout can make fetching large repositories fail.Read 14 Oct 2026 · wiki.nixos.org
- Limit: package targeting
- The NixOS Wiki says a single nixpkgs package cannot currently be built from only that input; a supplementary repository is required.Read 14 Oct 2026 · wiki.nixos.org
- Limit: queue reliability
- The NixOS Wiki records that hydra-queue-runner can become stuck while builds remain queued, with a cron restart suggested as a workaround.Read 14 Oct 2026 · wiki.nixos.org
- Local web interface
- The sample NixOS configuration exposes Hydra at a configurable URL, using http://localhost:3000 in the example.Read 14 Oct 2026 · github.com
- Maker legal status
- The NixOS Foundation is a registered Dutch nonprofit with Chamber of Commerce number 63520583.Read 14 Oct 2026 · linkedin.com
- Maker size
- LinkedIn lists the NixOS Foundation as having 2–10 employees.Read 14 Oct 2026 · linkedin.com
- Operational caveat
- The wiki says Hydra stores some state in its database and a complete stateless configuration is currently not possible, so backups are needed.Read 4 Oct 2026 · wiki.nixos.org
- Production warning
- The README says its simple local setup instructions are insufficient for a production or public server.Read 14 Oct 2026 · github.com
- Projects
- A Hydra project groups related jobsets, commonly corresponding to one source repository.Read 14 Oct 2026 · wiki.nixos.org
- Rating on G2
- 0 out of 5 from 1 review on the unrelated project-management Hydra listing.Read 14 Oct 2026 · g2.com
- Release sets
- Release sets describe collections of jobs, conventionally in a release.nix file.Read 14 Oct 2026 · wiki.nixos.org
- Restricted evaluation
- Hydra evaluates flakes in restricted mode, requiring allowed URI prefixes for external inputs.Read 14 Oct 2026 · wiki.nixos.org
- Security behavior
- Hydra evaluates flakes in restricted mode, which prevents access to files outside the Nix store, including fetched flake inputs.Read 4 Oct 2026 · wiki.nixos.org
- Self-hosting
- Hydra can be self-hosted through the NixOS services.hydra module.Read 14 Oct 2026 · github.com
- Source inputs
- Jobset inputs can include Git checkouts such as nixpkgs and the Hydra repository.Read 14 Oct 2026 · github.com
- Supported operating system
- The project README says running Hydra is currently supported only on NixOS.Read 14 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Builds projects and runs tests on a schedule or continuously.
- Jobsets can trigger on input changes and depend on one another.
- Jobs can produce packages, ISO images, and tarballs.
- Provides a JSON API.
- Licensed under GPL-3.0.
Limits
- Running Hydra is currently supported only on NixOS.
- No hosted option is listed.
- Database state means backups are needed.
- The queue runner can leave builds unscheduled.
Who it suits
Hydra is for developers building Nix or NixOS packages who need continuous integration. It is not needed simply to use NixOS.
Verdict
Hydra is a Nix-focused CI service with jobsets, build reports, and a JSON API. Its NixOS-only deployment support and operational caveats matter for teams planning to run it.
Where Specifiction places it
- Nintendo Switch Emulators#2 of 208.8
- Desktop Wallpaper Software#5 of 348.7
- Download Manager Software#9 of 588.5
- Continuous Integration Software#11 of 588.5