summaryrefslogtreecommitdiff
path: root/templates/flake/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to 'templates/flake/flake.nix')
-rw-r--r--templates/flake/flake.nix42
1 files changed, 42 insertions, 0 deletions
diff --git a/templates/flake/flake.nix b/templates/flake/flake.nix
new file mode 100644
index 0000000..bd88f19
--- /dev/null
+++ b/templates/flake/flake.nix
@@ -0,0 +1,42 @@
+{
+ inputs = {
+ nixpkgs.url = "nixpkgs";
+ nix-filter.url = "github:numtide/nix-filter";
+ flake-utils.url = "github:numtide/flake-utils";
+ nixpkgs-terraform-providers-bin.url = "github:nix-community/nixpkgs-terraform-providers-bin";
+ nixpkgs-terraform-providers-bin.inputs.nixpkgs.follows = "nixpkgs";
+ poetry2nix = {
+ url = "github:nix-community/poetry2nix";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
+ };
+ outputs = {
+ self,
+ flake-utils,
+ ...
+ } @ inputs:
+ flake-utils.lib.eachDefaultSystem (system: let
+ pkgs =
+ import inputs.nixpkgs
+ {
+ inherit system;
+ };
+ python = pkgs.python310;
+ poetry = inputs.poetry2nix.packages.${system}.poetry;
+ inherit (inputs.poetry2nix.legacyPackages.${system}) mkPoetryEnv defaultPoetryOverrides;
+
+ more-providers = inputs.nixpkgs-terraform-providers-bin.legacyPackages.${system}.providers;
+ terraform = pkgs.terraform.withPlugins (p: [
+ more-providers.microsoft.azuredevops
+ ]);
+ in {
+ devShells.default = pkgs.mkShell {
+ name = "default-shell";
+ buildInputs = [
+ terraform
+ poetry
+ pkgs.nodejs
+ ];
+ };
+ });
+}