nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 elixir,
4 fetchFromGitHub,
5 fetchMixDeps,
6 mixRelease,
7 nix-update-script,
8
9 # for tests
10 beam27Packages,
11 beam28Packages,
12}:
13# Based on ../elixir-ls/default.nix
14
15let
16 pname = "ex_doc";
17 version = "0.40.1";
18 src = fetchFromGitHub {
19 owner = "elixir-lang";
20 repo = "${pname}";
21 rev = "v${version}";
22 hash = "sha256-ZhsN2XI5WVy04ilNR/7NJo+C7F10lijsP+n3BGBNEkQ=";
23 };
24in
25mixRelease {
26 inherit
27 pname
28 version
29 src
30 elixir
31 ;
32
33 escriptBinName = "ex_doc";
34
35 stripDebug = true;
36
37 mixFodDeps = fetchMixDeps {
38 pname = "mix-deps-${pname}";
39 inherit src version elixir;
40 hash = "sha256-pMIm0lVMqkuiprp0XeVB+x4VTh+hQR3t8dk5OBmnIqA=";
41 };
42
43 passthru = {
44 tests = {
45 # ex_doc is the doc generation for OTP 27+, so let's make sure they build
46 erlang_27 = beam27Packages.erlang;
47 erlang_28 = beam28Packages.erlang;
48 };
49
50 updateScript = nix-update-script { };
51 };
52
53 meta = {
54 homepage = "https://github.com/elixir-lang/ex_doc";
55 description = ''
56 ExDoc produces HTML and EPUB documentation for Elixir projects
57 '';
58 license = lib.licenses.asl20;
59 platforms = lib.platforms.unix;
60 mainProgram = "ex_doc";
61 maintainers = with lib.maintainers; [ chiroptical ];
62 };
63}