nixos-configs/homeManagerModules/neovim/langs/golang/default.nix

33 lines
677 B
Nix

{
config,
lib,
pkgs,
...
}: let
inherit (lib) mkIf;
cfg = config.programs.neovim;
in {
config = mkIf (cfg.enable && cfg.ideConfig.enableGolang) {
programs = {
neovim = {
extraPackages = with pkgs; [go gopls];
extraLuaConfig =
# lua
''
local lsp = require('lspconfig');
local default_capabilities = require('cmp_nvim_lsp').default_capabilities();
lsp.gopls.setup({
cmd = { '${pkgs.gopls}/bin/gopls' },
capabilities = default_capabilities,
});
'';
};
};
};
# For accurate stack trace
_file = ./default.nix;
}