diff --git a/pkgs/by-name/em/ember-language-server/package.nix b/pkgs/by-name/em/ember-language-server/package.nix new file mode 100644 index 000000000000..6d2f68815d20 --- /dev/null +++ b/pkgs/by-name/em/ember-language-server/package.nix @@ -0,0 +1,50 @@ +{ + lib, + stdenv, + fetchFromGitHub, + fetchYarnDeps, + nodejs, + yarnConfigHook, + yarnInstallHook, + yarnBuildHook, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "ember-language-server"; + version = "2.30.5"; + + src = fetchFromGitHub { + owner = "ember-tooling"; + repo = "ember-language-server"; + tag = "v${finalAttrs.version}"; + hash = "sha256-/6j71pBmZor7C1u9BkptwwQonh6ZWoLmMDCMOGCpMik="; + }; + + yarnOfflineCache = fetchYarnDeps { + yarnLock = "${finalAttrs.src}/yarn.lock"; + hash = "sha256-vWCG+FDf6XTNrgqOQGMnE6xNZ5A8PU5DA+FcTLLurIg="; + }; + + nativeBuildInputs = [ + yarnConfigHook + yarnBuildHook + yarnInstallHook + # Needed for executing package.json scripts + nodejs + ]; + + yarnBuildScript = "compile"; + + postInstall = '' + ln -s $out/bin/@ember-tooling/ember-language-server $out/bin/ember-language-server + ''; + + meta = { + description = "Language Server Protocol implementation for Ember.js projects"; + homepage = "https://github.com/ember-tooling/ember-language-server"; + changelog = "https://github.com/ember-tooling/ember-language-server/blob/v${finalAttrs.version}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ ThaoTranLePhuong ]; + mainProgram = "ember-language-server"; + }; +})