57 lines
1.3 KiB
Nix
57 lines
1.3 KiB
Nix
{
|
|
lib,
|
|
buildNpmPackage,
|
|
fetchNpmDeps,
|
|
fetchFromGitHub,
|
|
versionCheckHook,
|
|
nix-update-script,
|
|
}:
|
|
|
|
buildNpmPackage rec {
|
|
pname = "node-client";
|
|
version = "5.3.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "neovim";
|
|
repo = "node-client";
|
|
tag = "v${version}";
|
|
hash = "sha256-0vPw2hCGUDepSpF1gp/lI71EgwGsCSnw7ePP7ElHsTQ=";
|
|
};
|
|
|
|
npmDeps = fetchNpmDeps {
|
|
inherit src;
|
|
hash = "sha256-VYoJAi1RzVf5ObjuGmnuiA/1WYBWC+qYPdfWF98+oGw=";
|
|
};
|
|
|
|
buildPhase = ''
|
|
runHook preBuild
|
|
npm run build
|
|
runHook postBuild
|
|
'';
|
|
|
|
postInstall = ''
|
|
mkdir $out/bin
|
|
ln -s $out/lib/node_modules/neovim/node_modules/.bin/neovim-node-host $out/bin/neovim-node-host
|
|
'';
|
|
|
|
nativeInstallCheckInputs = [
|
|
versionCheckHook
|
|
];
|
|
versionCheckProgram = "${placeholder "out"}/bin/neovim-node-host";
|
|
versionCheckProgramArg = "--version";
|
|
doInstallCheck = true;
|
|
|
|
passthru = {
|
|
updateScript = nix-update-script { };
|
|
};
|
|
|
|
meta = {
|
|
description = "Nvim msgpack API client and remote plugin provider";
|
|
homepage = "https://github.com/neovim/node-client";
|
|
changelog = "https://github.com/neovim/node-client/releases/tag/v${version}";
|
|
license = lib.licenses.mit;
|
|
maintainers = with lib.maintainers; [ fidgetingbits ];
|
|
mainProgram = "neovim-node-host";
|
|
};
|
|
}
|