Overview of sops-nix
mastersops-nix provides atomic, declarative, and reproducible secret provisioning for NixOS based on sops. It decrypts secrets from sops files during activation time and stores them as individual files with access-controlled users, permissions, and groups.
Key features include:
- Compatibility: Works with NixOps, nixos-rebuild, krops, morph, nixus, and home-manager.
- Version Control Friendly: Encrypted files can be committed to version control; diffs can be shown in cleartext via sops.
- CI Friendly: Secrets can be added to the Nix store without leaking them, allowing full machine builds from a repository.
- Atomic & Rollback Support: New secrets are written to a new directory and replaced atomically. Rollback support is available if sops files are added to the Nix store.
- Flexible Formats: Supports YAML, dotenv, INI, JSON, or binary storage formats.
- Cloud KMS Support: While not officially supported by sops-nix yet, AWS KMS, GCP KMS, Azure Key Vault, and Hashicorp Vault can be controlled via environment variables passed to
sops.