nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3
4 beamPackages,
5 fetchFromGitHub,
6}:
7
8beamPackages.mixRelease rec {
9 pname = "next-ls";
10 version = "0.23.2";
11
12 src = fetchFromGitHub {
13 owner = "elixir-tools";
14 repo = "next-ls";
15 tag = "v${version}";
16 hash = "sha256-2KzBOzrfoQQIqjEtYufvhT9bBibfEjNDiC+d3l5eaUc=";
17 };
18
19 mixFodDeps = beamPackages.fetchMixDeps {
20 inherit src version;
21 pname = "next-ls-deps";
22 hash = "sha256-4Rt5Q0fX+fbncvxyXdpIhgEvn9VYX/QDxDdnbanT21Q=";
23 };
24
25 removeCookie = false;
26
27 # replace installPhase to change release target
28 installPhase = ''
29 runHook preInstall
30
31 mix release --no-deps-check --path $out plain
32 makeWrapper $out/bin/plain $out/bin/nextls --add-flags "eval \"System.no_halt(true); Application.ensure_all_started(:next_ls)\""
33
34 runHook postInstall
35 '';
36
37 meta = {
38 homepage = "https://www.elixir-tools.dev/next-ls/";
39 changelog = "https://github.com/elixir-tools/next-ls/releases/tag/v${version}";
40 description = "Language server for Elixir that just works";
41 license = lib.licenses.mit;
42 mainProgram = "nextls";
43 maintainers = [ lib.maintainers.adamcstephens ];
44 platforms = beamPackages.erlang.meta.platforms;
45 };
46}