From e09e5297d3cf26472ebb2b4fd80cec2eb56f0f15 Mon Sep 17 00:00:00 2001 From: "Wael M. Nasreddine" Date: Wed, 31 Oct 2018 10:46:59 -0700 Subject: [PATCH] vim-plugins: vim-go: provide the binaries required for the plugin to be functional --- pkgs/misc/vim-plugins/overrides.nix | 34 +++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix index 6b8bf42c795f..6b1fd423a0ac 100644 --- a/pkgs/misc/vim-plugins/overrides.nix +++ b/pkgs/misc/vim-plugins/overrides.nix @@ -9,6 +9,12 @@ , languagetool , Cocoa, CoreFoundation, CoreServices , buildVimPluginFrom2Nix + +# vim-go denpencies +, asmfmt, delve, errcheck, godef, golint +, gomodifytags, gotags, gotools, motion +, gnused, reftools, gogetdoc, gometalinter +, impl, iferr }: let @@ -247,6 +253,34 @@ with generated; dependencies = ["vim-misc"]; }); + # change the go_bin_path to point to a path in the nix store. See the code in + # fatih/vim-go here + # https://github.com/fatih/vim-go/blob/155836d47052ea9c9bac81ba3e937f6f22c8e384/autoload/go/path.vim#L154-L159 + vim-go = vim-go.overrideAttrs(old: let + binPath = lib.makeBinPath [ + asmfmt + delve + errcheck + godef + gogetdoc + golint + gometalinter + gomodifytags + gotags + gotools + iferr + impl + motion + reftools + ]; + in { + postPatch = '' + ${gnused}/bin/sed \ + -Ee 's@let go_bin_path = go#path#BinPath\(\)@let go_bin_path = "${binPath}"@g' \ + -i autoload/go/path.vim + ''; + }); + vim-grammarous = vim-grammarous.overrideAttrs(old: { # use `:GrammarousCheck` to initialize checking # In neovim, you also want to use set