about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/networking/cluster/terraform-provider-nixos/default.nix23
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 25 insertions, 0 deletions
diff --git a/pkgs/applications/networking/cluster/terraform-provider-nixos/default.nix b/pkgs/applications/networking/cluster/terraform-provider-nixos/default.nix
new file mode 100644
index 0000000000000..135e5402929a7
--- /dev/null
+++ b/pkgs/applications/networking/cluster/terraform-provider-nixos/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
+buildGoPackage rec {
+  name = "terraform-provider-nixos-${version}";
+  version = "0.0.1";
+  goPackagePath = "github.com/tweag/terraform-provider-nixos";
+  src = fetchFromGitHub {
+    owner = "tweag";
+    repo = "terraform-provider-nixos";
+    sha256 = "00vz6qjq1pk39iqg4356b8g3c6slla9jifkv2knk46gc9q93q0lf";
+    rev = "v${version}";
+  };
+
+  # Terraform allow checking the provider versions, but this breaks
+  # if the versions are not provided via file paths.
+  postBuild = "mv go/bin/terraform-provider-nixos{,_v${version}}";
+
+  meta = with stdenv.lib; {
+    description = "Terraform plugin for outputting NixOS configuration files from Terraform resources.";
+    homepage = "https://github.com/tweag/terraform-provider-nixos";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ grahamc ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 9115bfafa96c6..cf4742e6910c4 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -20805,6 +20805,8 @@ with pkgs;
 
   terraform-inventory = callPackage ../applications/networking/cluster/terraform-inventory {};
 
+  terraform-provider-nixos = callPackage ../applications/networking/cluster/terraform-provider-nixos {};
+
   terraform-landscape = callPackage ../applications/networking/cluster/terraform-landscape {};
 
   terraform-provider-libvirt = callPackage ../applications/networking/cluster/terraform-provider-libvirt {};