Terraform modules for deploying NixOS machines to cloud infrastructure, combining infrastructure-as-code with NixOS configuration management.
terraform-nixos is a collection of Terraform modules designed to deploy NixOS machines to cloud infrastructure. It solves the problem of managing cloud resources while applying NixOS's declarative system configurations, offering better scalability and cloud provider support than NixOps alone. The modules handle tasks like custom image building, official image setup, and direct NixOS deployment to running instances.
DevOps engineers and infrastructure teams who use NixOS in production and need robust cloud resource management with Terraform's ecosystem.
Developers choose terraform-nixos because it combines Terraform's industry-standard cloud API coverage with NixOS's reproducible configurations, providing more flexibility and team collaboration features than NixOps while maintaining declarative infrastructure management.
A set of Terraform modules that are designed to deploy NixOS [maintainer=@adrian-gierakowski]
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages Terraform's extensive cloud provider ecosystem, with thousands of contributors mapping new APIs, ensuring better scalability and support than NixOps alone, as highlighted in the README.
Uses Terraform's state file locking and synchronization, making it suitable for multi-developer environments where shared state management is critical, unlike NixOps.
Offers both push deployment with the `deploy_nixos` module and custom image building with `google_image_nixos_custom`, allowing adaptation to auto-scaling or manual deployment scenarios.
Bridges Terraform's infrastructure management with NixOS's reproducible configurations, maintaining a declarative approach for consistent system deployments.
Requires proficiency in both Terraform and Nix, increasing the learning curve, and the README admits the integration is 'clunky,' leading to operational friction.
Currently focuses on Google Cloud with modules like `google_image_nixos`, while support for other providers is listed as future work, restricting multi-cloud flexibility.
Only provides a few core modules (e.g., for deployment and image building), which may not cover all edge cases compared to broader Terraform module libraries.
terraform-nixos is an open-source alternative to the following products: