erlang-ls: use rebar3Relx

This commit is contained in:
David 2021-05-17 17:53:54 +02:00 committed by Raphael Megzari
parent 72795f8c0b
commit 049ecc9716
2 changed files with 140 additions and 68 deletions

View File

@ -1,25 +1,23 @@
{ fetchFromGitHub, fetchHex, stdenv, erlang, rebar3WithPlugins, lib }: { fetchFromGitHub, fetchHex, rebar3Relx, buildRebar3, lib }:
let let
version = "0.15.0"; version = "0.15.0";
owner = "erlang-ls"; owner = "erlang-ls";
repo = "erlang_ls"; repo = "erlang_ls";
deps = import ./rebar-deps.nix { inherit fetchHex fetchFromGitHub; }; deps = import ./rebar-deps.nix {
in stdenv.mkDerivation { inherit fetchHex fetchFromGitHub;
builder = buildRebar3;
};
in rebar3Relx {
name = "erlang-ls";
inherit version; inherit version;
pname = "erlang-ls";
buildInputs = [ erlang (rebar3WithPlugins { }) ];
src = fetchFromGitHub { src = fetchFromGitHub {
inherit owner repo; inherit owner repo;
sha256 = "1s6zk8r5plm7ajifz17mvfrnk5mzbhj7alayink9phqbmzrypnfg"; sha256 = "1s6zk8r5plm7ajifz17mvfrnk5mzbhj7alayink9phqbmzrypnfg";
rev = version; rev = version;
}; };
buildPhase = '' releaseType = "escript";
mkdir _checkouts beamDeps = builtins.attrValues deps;
${toString (lib.mapAttrsToList (k: v: '' buildPhase = "HOME=. make";
cp -R ${v} _checkouts/${k}
'') deps)}
make
'';
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin
cp _build/default/bin/erlang_ls $out/bin/ cp _build/default/bin/erlang_ls $out/bin/

View File

@ -1,90 +1,164 @@
# Generated by rebar3_nix # Generated by rebar3_nix
{ fetchHex, fetchFromGitHub }: let fetchOnly = { src, ... }: src;
{ in { builder ? fetchOnly, fetchHex, fetchFromGitHub }: rec {
getopt = fetchHex { getopt = builder {
pkg = "getopt"; name = "getopt";
version = "1.0.1"; version = "1.0.1";
sha256 = "sha256-U+Grg7nOtlyWctPno1uAkum9ybPugHIUcaFhwQxZlZw="; src = fetchHex {
pkg = "getopt";
version = "1.0.1";
sha256 = "sha256-U+Grg7nOtlyWctPno1uAkum9ybPugHIUcaFhwQxZlZw=";
};
beamDeps = [ ];
}; };
zipper = fetchHex { zipper = builder {
pkg = "zipper"; name = "zipper";
version = "1.0.1"; version = "1.0.1";
sha256 = "sha256-ah/T4fDMHR31ZCyaDOIXgDZBGwpclkKFHR2idr1zfC0="; src = fetchHex {
pkg = "zipper";
version = "1.0.1";
sha256 = "sha256-ah/T4fDMHR31ZCyaDOIXgDZBGwpclkKFHR2idr1zfC0=";
};
beamDeps = [ ];
}; };
quickrand = fetchHex { quickrand = builder {
pkg = "quickrand"; name = "quickrand";
version = "2.0.1"; version = "2.0.1";
sha256 = "sha256-FNtn1K72uIFYEOyfPM714yS3O1bK42h/mddSuFvdTJY="; src = fetchHex {
pkg = "quickrand";
version = "2.0.1";
sha256 = "sha256-FNtn1K72uIFYEOyfPM714yS3O1bK42h/mddSuFvdTJY=";
};
beamDeps = [ ];
}; };
providers = fetchHex { providers = builder {
pkg = "providers"; name = "providers";
version = "1.8.1"; version = "1.8.1";
sha256 = "sha256-5FdFrenEdqmkaeoIQOQYqxk2DcRPAaIzME4RikRIa6A="; src = fetchHex {
pkg = "providers";
version = "1.8.1";
sha256 = "sha256-5FdFrenEdqmkaeoIQOQYqxk2DcRPAaIzME4RikRIa6A=";
};
beamDeps = [ getopt ];
}; };
katana_code = fetchHex { katana_code = builder {
pkg = "katana_code"; name = "katana_code";
version = "0.2.1"; version = "0.2.1";
sha256 = "sha256-hEitP1bZgU+YoovmUPcZG91QZXXjRcwW1YZmCxD26ZI="; src = fetchHex {
pkg = "katana_code";
version = "0.2.1";
sha256 = "sha256-hEitP1bZgU+YoovmUPcZG91QZXXjRcwW1YZmCxD26ZI=";
};
beamDeps = [ ];
}; };
bucs = fetchHex { bucs = builder {
pkg = "bucs"; name = "bucs";
version = "1.0.16"; version = "1.0.16";
sha256 = "sha256-/2pccqUArXrsHuO6FkrjxFDq3uiYsNFR4frKGKyNDWI="; src = fetchHex {
pkg = "bucs";
version = "1.0.16";
sha256 = "sha256-/2pccqUArXrsHuO6FkrjxFDq3uiYsNFR4frKGKyNDWI=";
};
beamDeps = [ ];
}; };
yamerl = fetchHex { yamerl = builder {
pkg = "yamerl"; name = "yamerl";
version = "0.8.1"; version = "0.8.1";
sha256 = "sha256-lssw+dZDRP7Q74qS6fFvIH3mwE3/9PNmdSynn1vOsj8="; src = fetchHex {
pkg = "yamerl";
version = "0.8.1";
sha256 = "sha256-lssw+dZDRP7Q74qS6fFvIH3mwE3/9PNmdSynn1vOsj8=";
};
beamDeps = [ ];
}; };
uuid = fetchHex { uuid = builder {
pkg = "uuid_erl"; name = "uuid";
version = "2.0.1"; version = "2.0.1";
sha256 = "sha256-q1fKzNUfFwAR5fREzoZfhLQWBeSDqe/MRowa+uyHVTs="; src = fetchHex {
pkg = "uuid_erl";
version = "2.0.1";
sha256 = "sha256-q1fKzNUfFwAR5fREzoZfhLQWBeSDqe/MRowa+uyHVTs=";
};
beamDeps = [ quickrand ];
}; };
tdiff = fetchHex { tdiff = builder {
pkg = "tdiff"; name = "tdiff";
version = "0.1.2"; version = "0.1.2";
sha256 = "sha256-4MLhaPmSUqWIl2jVyPHmUQoYRZLUz6BrIneKGNM9eHU="; src = fetchHex {
pkg = "tdiff";
version = "0.1.2";
sha256 = "sha256-4MLhaPmSUqWIl2jVyPHmUQoYRZLUz6BrIneKGNM9eHU=";
};
beamDeps = [ ];
}; };
redbug = fetchHex { redbug = builder {
pkg = "redbug"; name = "redbug";
version = "2.0.6"; version = "2.0.6";
sha256 = "sha256-qtlJhnH0q5HqylCZ/oWmFhgVimNuYoaJLE989K8XHQQ="; src = fetchHex {
pkg = "redbug";
version = "2.0.6";
sha256 = "sha256-qtlJhnH0q5HqylCZ/oWmFhgVimNuYoaJLE989K8XHQQ=";
};
beamDeps = [ ];
}; };
rebar3_format = fetchHex { rebar3_format = builder {
pkg = "rebar3_format"; name = "rebar3_format";
version = "0.8.2"; version = "0.8.2";
sha256 = "sha256-yo/ydjjCFpWT0USdrL6IlWNBk+0zNOkGtU/JfwgfUhM="; src = fetchHex {
pkg = "rebar3_format";
version = "0.8.2";
sha256 = "sha256-yo/ydjjCFpWT0USdrL6IlWNBk+0zNOkGtU/JfwgfUhM=";
};
beamDeps = [ katana_code ];
}; };
ranch = fetchHex { ranch = builder {
pkg = "ranch"; name = "ranch";
version = "1.7.1"; version = "1.7.1";
sha256 = "sha256-RR2FJ3h99xbZncNhYvygWTSRXbC2FBu9rC6o08evx9c="; src = fetchHex {
pkg = "ranch";
version = "1.7.1";
sha256 = "sha256-RR2FJ3h99xbZncNhYvygWTSRXbC2FBu9rC6o08evx9c=";
};
beamDeps = [ ];
}; };
jsx = fetchHex { jsx = builder {
pkg = "jsx"; name = "jsx";
version = "3.0.0"; version = "3.0.0";
sha256 = "sha256-N77KBDX1yoovRfdqRiEedkGPvvgMNvA2HCSfx1BZ3G0="; src = fetchHex {
pkg = "jsx";
version = "3.0.0";
sha256 = "sha256-N77KBDX1yoovRfdqRiEedkGPvvgMNvA2HCSfx1BZ3G0=";
};
beamDeps = [ ];
}; };
erlfmt = fetchFromGitHub { ephemeral = builder {
owner = "whatsapp"; name = "ephemeral";
repo = "erlfmt";
rev = "2e93fc4a646111357642b0179a2a63151868d890";
sha256 = "0n7kygycn05aqdp5dyj192mja89l4nxv2wg16qg2c0bmw9s7j2mr";
};
ephemeral = fetchHex {
pkg = "ephemeral";
version = "2.0.4"; version = "2.0.4";
sha256 = "sha256-Syk9gPdfnEV1/0ucjoiaVoAvQLAYv1fnTxlkTv7myFA="; src = fetchHex {
pkg = "ephemeral";
version = "2.0.4";
sha256 = "sha256-Syk9gPdfnEV1/0ucjoiaVoAvQLAYv1fnTxlkTv7myFA=";
};
beamDeps = [ bucs ];
}; };
elvis_core = fetchHex { elvis_core = builder {
pkg = "elvis_core"; name = "elvis_core";
version = "1.1.1"; version = "1.1.1";
sha256 = "sha256-ORyVuqSfJxjX+0mLzwgEbd/CAs8Kq2Oy5DknFIXJ3EI="; src = fetchHex {
pkg = "elvis_core";
version = "1.1.1";
sha256 = "sha256-ORyVuqSfJxjX+0mLzwgEbd/CAs8Kq2Oy5DknFIXJ3EI=";
};
beamDeps = [ katana_code zipper ];
}; };
docsh = fetchHex { docsh = builder {
pkg = "docsh"; name = "docsh";
version = "0.7.2"; version = "0.7.2";
sha256 = "sha256-Tn20YbsHVA0rw9NmuFE/AZdxLQSVu4V0TzZ9OBUHYTQ="; src = fetchHex {
pkg = "docsh";
version = "0.7.2";
sha256 = "sha256-Tn20YbsHVA0rw9NmuFE/AZdxLQSVu4V0TzZ9OBUHYTQ=";
};
beamDeps = [ providers ];
}; };
} }