30 lines
581 B
Nix
30 lines
581 B
Nix
{
|
|
user ? throw "user argument is required",
|
|
home ? throw "home argument is required",
|
|
}:
|
|
{ pkgs, ... }:
|
|
{
|
|
environment.persistence."/cache"."${home}/.local/share/go" = { };
|
|
|
|
home-manager.users.${user} = {
|
|
programs.go = {
|
|
enable = true;
|
|
goPath = "${home}/.local/share/go";
|
|
};
|
|
|
|
home = {
|
|
packages = with pkgs; [
|
|
gopls
|
|
go-tools
|
|
golangci-lint
|
|
golangci-lint-langserver
|
|
];
|
|
|
|
sessionVariables = {
|
|
GOPROXY = "goproxy.unx.sas.com";
|
|
GONOSUMDB = "*.sas.com,sassoftware.io";
|
|
};
|
|
};
|
|
};
|
|
}
|