libfmvoice: 0-unstable-2024-11-08 -> 0-unstable-2024-12-11 (#364919)
[NixPkgs.git] / pkgs / development / ocaml-modules / ptime / default.nix
blob4624e22600a169b73b618e71c27fcf24bfb83d0d
2   stdenv,
3   lib,
4   fetchurl,
5   ocaml,
6   findlib,
7   ocamlbuild,
8   topkg,
9 }:
11 lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
12   "ptime is not available for OCaml ${ocaml.version}"
14   stdenv.mkDerivation
15   (finalAttrs: {
16     version = "1.2.0";
17     pname = "ocaml${ocaml.version}-ptime";
19     src = fetchurl {
20       url = "https://erratique.ch/software/ptime/releases/ptime-${finalAttrs.version}.tbz";
21       hash = "sha256-lhZ0f99JDsNugCTKsn7gHjoK9XfYojImY4+kA03nOrA=";
22     };
24     nativeBuildInputs = [
25       findlib
26       ocaml
27       ocamlbuild
28       topkg
29     ];
31     buildInputs = [
32       topkg
33     ];
35     strictDeps = true;
37     inherit (topkg) buildPhase installPhase;
39     meta = {
40       description = "POSIX time for OCaml";
41       homepage = "https://erratique.ch/software/ptime";
42       license = lib.licenses.isc;
43       longDescription = ''
44         Ptime has platform independent POSIX time support in pure OCaml.
45         It provides a type to represent a well-defined range of POSIX timestamps
46         with picosecond precision, conversion with date-time values, conversion
47         with RFC 3339 timestamps and pretty printing to a human-readable,
48         locale-independent representation.
50         The additional Ptime_clock library provides access to a system POSIX clock
51         and to the system's current time zone offset.
53         Ptime is not a calendar library.
54       '';
55       maintainers = with lib.maintainers; [ sternenseemann ];
56     };
57   })