nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 libGL,
6 libX11,
7 setuptools,
8 glcontext,
9}:
10
11buildPythonPackage rec {
12 pname = "moderngl";
13 version = "5.12.0";
14 pyproject = true;
15
16 src = fetchPypi {
17 inherit pname version;
18 hash = "sha256-UpNqmMyy8uHW48sYUospGfaDHn4/kk54i1hzutzlEps=";
19 };
20
21 postPatch = ''
22 substituteInPlace _moderngl.py \
23 --replace-fail '"libGL.so"' '"${libGL}/lib/libGL.so"' \
24 --replace-fail '"libEGL.so"' '"${libGL}/lib/libEGL.so"'
25 '';
26
27 build-system = [ setuptools ];
28
29 buildInputs = [
30 libGL
31 libX11
32 ];
33
34 dependencies = [ glcontext ];
35
36 # Tests need a display to run.
37 doCheck = false;
38
39 pythonImportsCheck = [ "moderngl" ];
40
41 meta = {
42 description = "High performance rendering for Python";
43 homepage = "https://github.com/moderngl/moderngl";
44 changelog = "https://github.com/moderngl/moderngl/releases/tag/${version}";
45 license = lib.licenses.mit;
46 maintainers = with lib.maintainers; [ c0deaddict ];
47 # should be mesa.meta.platforms, darwin build breaks.
48 platforms = lib.platforms.linux;
49 };
50}