1{
2 lib,
3 fetchurl,
4 fetchpatch,
5 buildDunePackage,
6 dune-configurator,
7 ctypes,
8 integers,
9 patch,
10 libGL,
11 libX11,
12 libXcursor,
13 libXi,
14 libXinerama,
15 libXrandr,
16}:
17
18buildDunePackage rec {
19 pname = "raylib";
20 version = "1.4.0";
21
22 src = fetchurl {
23 url = "https://github.com/tjammer/raylib-ocaml/releases/download/${version}/raylib-${version}.tbz";
24 hash = "sha256-/SeKgQOrhsAgMNk6ODAZlopL0mL0lVfCTx1ugmV1P/s=";
25 };
26
27 patches = [
28 (fetchpatch {
29 name = "fix-build-with-patch-3.0.0.patch";
30 url = "https://github.com/tjammer/raylib-ocaml/commit/40e6fef44e3c39d4526806c4b830da77c4fe4bb8.patch";
31 excludes = [
32 "dune-project"
33 "raygui.opam"
34 ];
35 hash = "sha256-MEZkkBgjL2iT6Av/s0tJCrW7+oyp9QD6sUbXEusCAWI=";
36 })
37 ];
38
39 buildInputs = [
40 dune-configurator
41 patch
42 ];
43
44 propagatedBuildInputs = [
45 ctypes
46 integers
47 libGL
48 libX11
49 libXcursor
50 libXi
51 libXinerama
52 libXrandr
53 ];
54
55 meta = {
56 description = "OCaml bindings for Raylib (5.0.0)";
57 homepage = "https://tjammer.github.io/raylib-ocaml";
58 maintainers = with lib.maintainers; [ r17x ];
59 license = lib.licenses.mit;
60 };
61}