diff options
| -rw-r--r-- | .gitignore | 4 | ||||
| -rw-r--r-- | shell.nix | 17 |
2 files changed, 21 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore index 5d2bdc181..dfd1d7043 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,7 @@ cmd/tailscaled/tailscaled # Dependency directories (remove the comment below to include it) # vendor/ + +# direnv config, this may be different for other people so it's probably safer +# to make this nonspecific. +.envrc @@ -1,6 +1,23 @@ +# This is a shell.nix file used to describe the environment that tailscale needs +# for development. This includes a lot of the basic tools that you need in order +# to get started. We hope this file will be useful for users of Nix on macOS or +# Linux. +# +# For more information about this and why this file is useful, see here: +# https://nixos.org/guides/nix-pills/developing-with-nix-shell.html +# +# Also look into direnv: https://direnv.net/, this can make it so that you can +# automatically get your environment set up when you change folders into the +# project. { pkgs ? import <nixpkgs> {} }: pkgs.mkShell { + # This specifies the tools that are needed for people to get started with + # development. These tools include: + # - The Go compiler toolchain (and all additional tooling with it) + # - goimports, a robust formatting tool for Go source code + # - gopls, the language server for Go to increase editor integration + # - git, the version control program (used in some scripts) buildInputs = with pkgs; [ go goimports gopls git ]; |
