evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / development / beam-modules / ex_doc / default.nix
blobb46d7fee6ef49cad3a4bc7c38fdb5b95844c645e
1 { lib, elixir, fetchFromGitHub, fetchMixDeps, mixRelease, nix-update-script }:
2 # Based on ../elixir-ls/default.nix
4 let
5   pname = "ex_doc";
6   version = "0.34.1";
7   src = fetchFromGitHub {
8     owner = "elixir-lang";
9     repo = "${pname}";
10     rev = "v${version}";
11     hash = "sha256-OXIRippEDYAKD222XzNJkkZdXbUkDUauv5amr4oAU7c=";
12   };
14 mixRelease {
15   inherit pname version src elixir;
17   stripDebug = true;
19   mixFodDeps = fetchMixDeps {
20     pname = "mix-deps-${pname}";
21     inherit src version elixir;
22     hash = "sha256-fYINsATbw3M3r+IVoYS14aVEsg9OBuH6mNUqzQJuDQo=";
23   };
25   configurePhase = ''
26     runHook preConfigure
27     mix deps.compile --no-deps-check
28     runHook postConfigure
29   '';
31   buildPhase = ''
32     runHook preBuild
33     mix do escript.build
34     runHook postBuild
35   '';
37   installPhase = ''
38     runHook preInstall
39     mkdir -p $out/bin
40     cp -v ex_doc $out/bin
41     runHook postInstall
42   '';
44   meta = with lib; {
45     homepage = "https://github.com/elixir-lang/ex_doc";
46     description = ''
47       ExDoc produces HTML and EPUB documentation for Elixir projects
48     '';
49     license = licenses.asl20;
50     platforms = platforms.unix;
51     mainProgram = "ex_doc";
52     maintainers = with maintainers; [chiroptical];
53   };
54   passthru.updateScript = nix-update-script { };