nerdfonts: fix wrong attribute name in error message (#364463)
[NixPkgs.git] / pkgs / development / ocaml-modules / ocsigen-server / default.nix
blob4e4a09e22d878b52afed548cf8900b7eecd7ffd2
2   lib,
3   buildDunePackage,
4   fetchFromGitHub,
5   which,
6   ocaml,
7   lwt_react,
8   ssl,
9   lwt_ssl,
10   findlib,
11   bigstringaf,
12   lwt,
13   cstruct,
14   mirage-crypto,
15   zarith,
16   mirage-crypto-ec,
17   ptime,
18   mirage-crypto-rng,
19   mtime,
20   ca-certs,
21   cohttp,
22   cohttp-lwt-unix,
23   lwt_log,
24   re,
25   cryptokit,
26   xml-light,
27   ipaddr,
28   camlzip,
29   makeWrapper,
32 let
33   mkpath = p: "${p}/lib/ocaml/${ocaml.version}/site-lib/stublibs";
36 let
37   caml_ld_library_path = lib.concatMapStringsSep ":" mkpath [
38     bigstringaf
39     lwt
40     ssl
41     cstruct
42     mirage-crypto
43     zarith
44     mirage-crypto-ec
45     ptime
46     mirage-crypto-rng
47     mtime
48     ca-certs
49     cryptokit
50     re
51   ];
54 buildDunePackage rec {
55   version = "6.0.0";
56   pname = "ocsigenserver";
58   minimalOCamlVersion = "4.08";
60   src = fetchFromGitHub {
61     owner = "ocsigen";
62     repo = "ocsigenserver";
63     rev = "refs/tags/${version}";
64     hash = "sha256-T3bgPZpDO6plgebLJDBtBuR2eR/bN3o24UAUv1VwgtI=";
65   };
67   nativeBuildInputs = [
68     makeWrapper
69     which
70   ];
71   buildInputs = [
72     lwt_react
73     camlzip
74     findlib
75   ];
77   propagatedBuildInputs = [
78     cohttp
79     cohttp-lwt-unix
80     cryptokit
81     ipaddr
82     lwt_log
83     lwt_ssl
84     re
85     xml-light
86   ];
88   configureFlags = [
89     "--root $(out)"
90     "--prefix /"
91     "--temproot ''"
92   ];
94   dontAddPrefix = true;
95   dontAddStaticConfigureFlags = true;
96   configurePlatforms = [ ];
98   postConfigure = ''
99     make -C src confs
100   '';
102   postInstall = ''
103     make install.files
104   '';
106   postFixup = ''
107     rm -rf $out/var/run
108     wrapProgram $out/bin/ocsigenserver \
109       --suffix CAML_LD_LIBRARY_PATH : "${caml_ld_library_path}"
110   '';
112   dontPatchShebangs = true;
114   meta = {
115     homepage = "http://ocsigen.org/ocsigenserver/";
116     description = "Full featured Web server";
117     longDescription = ''
118       A full featured Web server. It implements most features of the HTTP protocol, and has a very powerful extension mechanism that make very easy to plug your own OCaml modules for generating pages.
119     '';
120     license = lib.licenses.lgpl21Only;
121     inherit (ocaml.meta) platforms;
122     maintainers = [ lib.maintainers.gal_bolle ];
123   };