shell.nix 1.0 KB

123456789101112131415161718192021222324
  1. # This is a shell.nix file used to describe the environment that tailscale needs
  2. # for development. This includes a lot of the basic tools that you need in order
  3. # to get started. We hope this file will be useful for users of Nix on macOS or
  4. # Linux.
  5. #
  6. # For more information about this and why this file is useful, see here:
  7. # https://nixos.org/guides/nix-pills/developing-with-nix-shell.html
  8. #
  9. # Also look into direnv: https://direnv.net/, this can make it so that you can
  10. # automatically get your environment set up when you change folders into the
  11. # project.
  12. { pkgs ? import <nixpkgs> {} }:
  13. pkgs.mkShell {
  14. # This specifies the tools that are needed for people to get started with
  15. # development. These tools include:
  16. # - The Go compiler toolchain (and all additional tooling with it)
  17. # - goimports, a robust formatting tool for Go source code
  18. # - gopls, the language server for Go to increase editor integration
  19. # - git, the version control program (used in some scripts)
  20. buildInputs = with pkgs; [
  21. go goimports gopls git
  22. ];
  23. }