Merge pull request #49815 from kalbasit/nixpkgs_fix-vim-go
vimPlugins: vim-go: make gocode, gocode-mod and keyify available to it
This commit is contained in:
50
pkgs/development/tools/gocode-gomod/default.nix
Normal file
50
pkgs/development/tools/gocode-gomod/default.nix
Normal file
@@ -0,0 +1,50 @@
|
||||
{ stdenv, buildGoPackage, fetchFromGitHub }:
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "gocode-gomod-unstable-${version}";
|
||||
version = "2018-10-16";
|
||||
rev = "12640289f65065d652cc942ffa01a52bece1dd53";
|
||||
|
||||
goPackagePath = "github.com/stamblerre/gocode";
|
||||
|
||||
# we must allow references to the original `go` package,
|
||||
# because `gocode` needs to dig into $GOROOT to provide completions for the
|
||||
# standard packages.
|
||||
allowGoReference = true;
|
||||
|
||||
excludedPackages = ''internal/suggest/testdata'';
|
||||
|
||||
src = fetchFromGitHub {
|
||||
inherit rev;
|
||||
|
||||
owner = "stamblerre";
|
||||
repo = "gocode";
|
||||
sha256 = "1avv0b5p2l8pv38m5gg97k57ndr5k9yy0rfkmmwjq96pa221hs1q";
|
||||
};
|
||||
|
||||
goDeps = ./deps.nix;
|
||||
|
||||
postInstall = ''
|
||||
mv $bin/bin/gocode $bin/bin/gocode-gomod
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An autocompletion daemon for the Go programming language";
|
||||
longDescription = ''
|
||||
Gocode is a helper tool which is intended to be integrated with your
|
||||
source code editor, like vim, neovim and emacs. It provides several
|
||||
advanced capabilities, which currently includes:
|
||||
|
||||
- Context-sensitive autocompletion
|
||||
|
||||
It is called daemon, because it uses client/server architecture for
|
||||
caching purposes. In particular, it makes autocompletions very fast.
|
||||
Typical autocompletion time with warm cache is 30ms, which is barely
|
||||
noticeable.
|
||||
'';
|
||||
homepage = https://github.com/stamblerre/gocode;
|
||||
license = licenses.mit;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ kalbasit ];
|
||||
};
|
||||
}
|
||||
11
pkgs/development/tools/gocode-gomod/deps.nix
generated
Normal file
11
pkgs/development/tools/gocode-gomod/deps.nix
generated
Normal file
@@ -0,0 +1,11 @@
|
||||
[
|
||||
{
|
||||
goPackagePath = "golang.org/x/tools";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/tools";
|
||||
rev = "78dc5bac0cacea7969e98b79c3b86597e0aa4e25";
|
||||
sha256 = "16jg2x1sfm39kz4rchn0gxyq99fnkxw6v51wxriqbs76a2wrznp9";
|
||||
};
|
||||
}
|
||||
]
|
||||
@@ -2,10 +2,11 @@
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "gocode-unstable-${version}";
|
||||
version = "2018-10-22";
|
||||
rev = "e893215113e5f7594faa3a8eb176c2700c921276";
|
||||
version = "2018-11-05";
|
||||
rev = "0af7a86943a6e0237c90f8aeb74a882e1862c898";
|
||||
|
||||
goPackagePath = "github.com/mdempsky/gocode";
|
||||
excludedPackages = ''internal/suggest/testdata'';
|
||||
|
||||
# we must allow references to the original `go` package,
|
||||
# because `gocode` needs to dig into $GOROOT to provide completions for the
|
||||
@@ -17,17 +18,11 @@ buildGoPackage rec {
|
||||
|
||||
owner = "mdempsky";
|
||||
repo = "gocode";
|
||||
sha256 = "1zsll7yghv64890k7skl0g2lg9rsaiisgrfnb8kshsxrcxi1kc2l";
|
||||
sha256 = "0fxqn0v6dbwarn444lc1xrx5vfkcidi73f4ba7l4clsb9qdqgyam";
|
||||
};
|
||||
|
||||
goDeps = ./deps.nix;
|
||||
|
||||
preBuild = ''
|
||||
# getting an error building the testdata because they contain invalid files
|
||||
# on purpose as part of the testing.
|
||||
rm -r go/src/$goPackagePath/internal/suggest/testdata
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An autocompletion daemon for the Go programming language";
|
||||
longDescription = ''
|
||||
|
||||
4
pkgs/development/tools/gocode/deps.nix
generated
4
pkgs/development/tools/gocode/deps.nix
generated
@@ -4,8 +4,8 @@
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/tools";
|
||||
rev = "6fe81c087942f588f40c3f67b41ce284f2f70eee";
|
||||
sha256 = "04yl7rk2lf94bxz74ja5snh7ava9gcnf2yx6y002pfkk538r6w5d";
|
||||
rev = "78dc5bac0cacea7969e98b79c3b86597e0aa4e25";
|
||||
sha256 = "16jg2x1sfm39kz4rchn0gxyq99fnkxw6v51wxriqbs76a2wrznp9";
|
||||
};
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user