at master 51 lines 1.3 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 fetchYarnDeps, 6 yarnConfigHook, 7 yarnBuildHook, 8 nodejs, 9 npmHooks, 10}: 11 12stdenv.mkDerivation (finalAttrs: { 13 pname = "vim-language-server"; 14 version = "2.3.1"; 15 16 src = fetchFromGitHub { 17 owner = "iamcco"; 18 repo = "vim-language-server"; 19 rev = "v${finalAttrs.version}"; 20 hash = "sha256-NfBKNCTvCMIJrSiTlCG+LtVoMBMdCc3rzpDb9Vp2CGM="; 21 }; 22 23 offlineCache = fetchYarnDeps { 24 yarnLock = finalAttrs.src + "/yarn.lock"; 25 hash = "sha256-mo8urQaWIHu33+r0Y7mL9mJ/aSe/5CihuIetTeDHEUQ="; 26 }; 27 28 nativeBuildInputs = [ 29 yarnConfigHook 30 yarnBuildHook 31 # Needed for executing package.json scripts 32 nodejs 33 npmHooks.npmInstallHook 34 ]; 35 # https://stackoverflow.com/a/69699772/4935114 36 preBuild = '' 37 export NODE_OPTIONS=--openssl-legacy-provider 38 ''; 39 # Needed ever since noBrokenSymlinks was introduced 40 postInstall = '' 41 rm $out/lib/node_modules/vim-language-server/node_modules/.bin/node-which 42 ''; 43 44 meta = { 45 description = "VImScript language server, LSP for vim script"; 46 homepage = "https://github.com/iamcco/vim-language-server"; 47 license = lib.licenses.mit; 48 maintainers = with lib.maintainers; [ doronbehar ]; 49 mainProgram = "vim-language-server"; 50 }; 51})