2020-12-29 17:17:03 +00:00
|
|
|
# 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)
|
2022-04-07 20:05:04 +00:00
|
|
|
# - gotools for goimports, a robust formatting tool for Go source code
|
2020-12-29 17:17:03 +00:00
|
|
|
# - gopls, the language server for Go to increase editor integration
|
|
|
|
# - git, the version control program (used in some scripts)
|
|
|
|
buildInputs = with pkgs; [
|
2022-04-07 20:05:04 +00:00
|
|
|
go gotools gopls git
|
2020-12-29 17:17:03 +00:00
|
|
|
];
|
|
|
|
}
|