diff options
Diffstat (limited to 'pkgs/development/tools/language-servers/kotlin-language-server')
-rw-r--r-- | pkgs/development/tools/language-servers/kotlin-language-server/default.nix | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/development/tools/language-servers/kotlin-language-server/default.nix b/pkgs/development/tools/language-servers/kotlin-language-server/default.nix new file mode 100644 index 0000000000000..b3b1085273d10 --- /dev/null +++ b/pkgs/development/tools/language-servers/kotlin-language-server/default.nix @@ -0,0 +1,38 @@ +{ lib, stdenv, fetchzip, openjdk, gradle, makeWrapper, maven }: + +stdenv.mkDerivation rec { + pname = "kotlin-language-server"; + version = "1.3.1"; + src = fetchzip { + url = "https://github.com/fwcd/kotlin-language-server/releases/download/${version}/server.zip"; + hash = "sha256-FxpNA4OGSgFdILl0yKBDTtVdQl6Bw9tm2eURbsJdZzI="; + }; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/lib + mkdir -p $out/bin + cp -r lib/* $out/lib + cp -r bin/* $out/bin + ''; + + nativeBuildInputs = [ gradle makeWrapper ]; + buildInputs = [ openjdk gradle ]; + + postFixup = '' + wrapProgram "$out/bin/kotlin-language-server" --set JAVA_HOME ${openjdk} --prefix PATH : ${lib.strings.makeBinPath [ openjdk maven ] } + ''; + + meta = { + description = "kotlin language server"; + longDescription = '' + About Kotlin code completion, linting and more for any editor/IDE + using the Language Server Protocol Topics''; + maintainers = with lib.maintainers; [ vtuan10 ]; + homepage = "https://github.com/fwcd/kotlin-language-server"; + changelog = "https://github.com/fwcd/kotlin-language-server/blob/${version}/CHANGELOG.md"; + license = lib.licenses.mit; + platforms = lib.platforms.unix; + }; +} |