1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 stdenv,
6 setuptools,
7 boost,
8 freetype,
9 ftgl,
10 libGLU,
11 libGL,
12 python,
13}:
14
15let
16 pythonVersion = with lib.versions; "${major python.version}${minor python.version}";
17in
18buildPythonPackage rec {
19 pname = "pyftgl";
20 version = "0.4b";
21 pyproject = true;
22
23 src = fetchFromGitHub {
24 owner = "umlaeute";
25 repo = "pyftgl";
26 tag = version;
27 sha256 = "sha256-mbzXpIPMNe6wfwaAAw/Ri8xaW6Z6kuNUhFFyzsiW7Is=";
28 };
29
30 build-system = [ setuptools ];
31
32 postPatch =
33 ''
34 substituteInPlace setup.py \
35 --replace-fail boost_python boost_python${pythonVersion}
36 ''
37 + lib.optionalString stdenv.hostPlatform.isDarwin ''
38 export NIX_CFLAGS_COMPILE+=" -L$SDKROOT/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries"
39 '';
40
41 buildInputs = [
42 boost
43 freetype
44 ftgl
45 libGLU
46 libGL
47 ];
48
49 meta = {
50 description = "Python bindings for FTGL (FreeType for OpenGL)";
51 license = lib.licenses.gpl2Plus;
52 };
53}