DEV.co
Open-Source DevOps · NixOS

nixops

NixOps is a declarative infrastructure-as-code tool for deploying NixOS machines across multiple cloud providers and on-premises environments. The project is in low-maintenance mode and explicitly not recommended for new projects; an experimental rewrite (NixOps4) is underway.

Source: GitHub — github.com/NixOS/nixops
2.2k
GitHub stars
365
Forks
Python
Primary language
LGPL-3.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
RepositoryNixOS/nixops
OwnerNixOS
Primary languagePython
LicenseLGPL-3.0 — OSI-approved
Stars2.2k
Forks365
Open issues327
Latest releaseUnknown
Last updated2025-12-28
Sourcehttps://github.com/NixOS/nixops

What nixops is

NixOps uses Nix language to describe declarative, reproducible deployments with separation of logical (what) and physical (where) configuration. It supports AWS, Hetzner, GCE, libvirt, and VirtualBox backends via a plugin architecture, with state management and multi-machine orchestration.

Quickstart

Get the nixops source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/NixOS/nixops.gitcd nixops# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

NixOS-native infrastructure in stable environments

Organizations already committed to NixOS and seeking declarative, reproducible deployments where machine configurations are defined in Nix language. Best suited for teams maintaining existing NixOps deployments.

Multi-cloud deployments with test environments

Projects requiring consistent deployments across AWS, Hetzner, GCE, or on-premises, with ability to test configurations locally on VirtualBox or libvirt before production rollout.

Infrastructure-as-code for homogeneous environments

Deployments where all or most machines run NixOS, enabling strong coupling between application configuration and system state for reproducibility and rollback capabilities.

Implementation considerations

  • Requires NixOS hosts or Nix toolchain for local builds; macOS users may need a NixOS VM as a remote builder.
  • Plugin-based backend architecture means cloud provider support depends on maintained community or official plugins (nixops-aws, nixops-hetzner, etc.).
  • State management is implicit; understand how NixOps tracks deployment state and handles rollbacks before adopting in production.
  • Development dependencies (Python, pytest, mypy, black) must be present; use provided shell.nix for consistent dev environment.
  • Extensive documentation in reStructuredText but marked as low-maintenance; expect slower response to issues or documentation updates.

When to avoid it — and what to weigh

  • Starting new projects — The README explicitly states 'NixOps is in low-maintenance mode and probably not suited for new projects.' Use nixops4 (experimental rewrite) or alternative tools for greenfield work.
  • Heterogeneous OS environments — Mixed deployments with CentOS, Ubuntu, Windows, or other non-NixOS machines. NixOps is designed around NixOS and its declarative model; managing diverse OSes requires different tooling.
  • Rapid feature iteration needs — Active development of deployment features or frequent backend additions. Low-maintenance status and focus on experimental rewrite suggest slower uptake of new cloud features or bug fixes.
  • Team unfamiliar with Nix — Steep learning curve for teams without Nix/NixOS experience. Deployment and debugging require understanding of Nix language, package management, and NixOS system model.

License & commercial use

Licensed under LGPL-3.0 (GNU Lesser General Public License v3.0), a copyleft license permitting commercial use under specific conditions (source code distribution, license propagation).

LGPL-3.0 permits commercial use of NixOps as a deployment tool, but any modifications or derivative works must be licensed under LGPL-3.0 or compatible. Linking NixOps as a library in proprietary software requires compliance review. Requires legal review for organizational use policies.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceModerate
DocumentationAdequate
License clarityClear
Deployment complexityHigh
DEV.co fitPossible
Assessment confidenceHigh
Security considerations

State files and cloud credentials must be protected (LGPL does not address security posture). No public security audit data provided. Nix's declarative model reduces configuration drift and aids auditability. Ensure remote builders (especially on macOS) are secured and trusted. Review plugin sources before enabling; untrusted plugins can execute arbitrary code during deployments.

Alternatives to consider

Terraform + Nixos-provisioners

Language-agnostic IaC with broader cloud support and active maintenance. Use Terraform for resource provisioning and NixOS provisioners for guest configuration.

Ansible + NixOS

Simpler learning curve, broader OS support, and active community. Combine Ansible playbooks with NixOS declarative configuration for heterogeneous environments.

Nixops4 (experimental rewrite)

Official modernization of NixOps addressing original limitations. Consider as a forward-looking alternative if stability acceptable for trial environments.

Software development agency

Build on nixops with DEV.co software developers

NixOps is mature but in low-maintenance mode and not recommended for new projects. Existing NixOS deployments can leverage its declarative model, but consider nixops4 (experimental) or Terraform/Ansible for new initiatives. Our DevOps team can help assess fit and migrate existing infrastructure.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

nixops FAQ

Is NixOps safe for production?
Existing production deployments can continue using NixOps, but the project is in low-maintenance mode with 327 open issues and no recent releases. New production projects should evaluate nixops4 or alternatives.
What cloud providers are supported?
Core supports AWS, Hetzner, GCE (via community plugin), and on-premises (libvirt, VirtualBox). Support depends on maintained plugins; verify plugin status before adopting.
Can I use NixOps without learning Nix?
No. Deployment configuration is written in Nix language. Teams without Nix experience should plan training or evaluate simpler alternatives (Terraform, Ansible).
How does state management work?
NixOps tracks deployment state implicitly. Details on state storage, recovery, and rollback are in the manual; review carefully before adopting for multi-environment setups.

Software developers & web developers for hire

Need help beyond evaluating nixops? DEV.co is a software development agency offering software development services and web development for teams of every size. Our software developers and web developers build custom software, web applications, APIs, and open-source devops integrations — and maintain them long-term.

Evaluating NixOps for your infrastructure?

NixOps is mature but in low-maintenance mode and not recommended for new projects. Existing NixOS deployments can leverage its declarative model, but consider nixops4 (experimental) or Terraform/Ansible for new initiatives. Our DevOps team can help assess fit and migrate existing infrastructure.