fluffychat: 1.22.1 -> 1.23.0 (#364091)
[NixPkgs.git] / pkgs / development / ocaml-modules / gg / default.nix
blob7b015cf6840ceffd0287d4db5f8e266e25152fca
2   lib,
3   stdenv,
4   fetchurl,
5   ocaml,
6   findlib,
7   topkg,
8   ocamlbuild,
9 }:
11 let
12   homepage = "https://erratique.ch/software/gg";
13   version = "1.0.0";
16 lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
17   "gg is not available for OCaml ${ocaml.version}"
19   stdenv.mkDerivation
20   {
22     pname = "ocaml${ocaml.version}-gg";
23     inherit version;
25     src = fetchurl {
26       url = "${homepage}/releases/gg-${version}.tbz";
27       sha256 = "sha256:0j7bpj8k17csnz6v6frkz9aycywsb7xmznnb31g8rbfk3626f3ci";
28     };
30     strictDeps = true;
32     nativeBuildInputs = [
33       ocaml
34       findlib
35       ocamlbuild
36       topkg
37     ];
38     buildInputs = [ topkg ];
40     inherit (topkg) buildPhase installPhase;
42     meta = with lib; {
43       description = "Basic types for computer graphics in OCaml";
44       longDescription = ''
45         Gg is an OCaml module providing basic types for computer graphics. It
46         defines types and functions for floats, vectors, points, sizes,
47         matrices, quaternions, axis aligned boxes, colors, color spaces, and
48         raster data.
49       '';
50       inherit homepage;
51       inherit (ocaml.meta) platforms;
52       license = licenses.bsd3;
53       maintainers = [ maintainers.jirkamarsik ];
54     };
55   }