diff --git a/nix/configuration/configuration.nix b/nix/configuration/configuration.nix index a2d6aec..58d3b51 100644 --- a/nix/configuration/configuration.nix +++ b/nix/configuration/configuration.nix @@ -51,6 +51,7 @@ ./roles/launch_keyboard ./roles/lvfs ./roles/nvme + ./roles/terraform ]; nix.settings.experimental-features = [ diff --git a/nix/configuration/roles/terraform/default.nix b/nix/configuration/roles/terraform/default.nix new file mode 100644 index 0000000..0204d3d --- /dev/null +++ b/nix/configuration/roles/terraform/default.nix @@ -0,0 +1,38 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + alias_tf = pkgs.writeShellScriptBin "tf" '' + exec ${pkgs.terraform}/bin/terraform "''${@}" + ''; +in +{ + imports = [ ]; + + environment.systemPackages = with pkgs; [ + terraform + alias_tf + ]; + + allowedUnfree = [ + "terraform" + ]; + + environment.persistence."/persist" = lib.mkIf (!config.me.buildingIso) { + hideMounts = true; + users.talexander = { + directories = [ + { + directory = ".terraform.d"; + user = "talexander"; + group = "talexander"; + mode = "0755"; + } + ]; + }; + }; +}