1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
{
lib,
buildPythonPackage,
fetchurl,
isPy27,
renpy,
cython_0,
SDL2,
SDL2_image,
SDL2_ttf,
SDL2_mixer,
libjpeg,
libpng,
setuptools,
}:
let
pname = "pygame-sdl2";
version = "2.1.0";
renpy_version = renpy.base_version;
in
buildPythonPackage {
inherit pname version;
name = "${pname}-${version}-${renpy_version}";
pyproject = true;
src = fetchurl {
url = "https://www.renpy.org/dl/${renpy_version}/pygame_sdl2-${version}+renpy${renpy_version}.tar.gz";
hash = "sha256-Zib39NyQ1pGVCWPrK5/Tl3dAylUlmKZKxU8pf+OpAdY=";
};
# force rebuild of headers needed for install
prePatch = ''
rm -rf gen gen3
'';
# Remove build tag which produces invaild version
postPatch = ''
sed -i '2d' setup.cfg
'';
nativeBuildInputs = [
SDL2.dev
cython_0
setuptools
];
buildInputs = [
SDL2
SDL2_image
SDL2_ttf
SDL2_mixer
libjpeg
libpng
];
doCheck = isPy27; # python3 tests are non-functional
meta = {
description = "A reimplementation of parts of pygame API using SDL2";
homepage = "https://github.com/renpy/pygame_sdl2";
license = with lib.licenses; [ lgpl2 zlib ];
maintainers = with lib.maintainers; [ raskin ];
};
}
|