1{ stdenv, lib, fetchFromBitbucket, buildPythonPackage, python, smpeg, libX11
2, SDL, SDL_image, SDL_mixer, SDL_ttf, libpng, libjpeg, portmidi
3}:
4
5buildPythonPackage rec {
6 name = "pygame-${version}";
7 version = "2016-05-17";
8
9 src = fetchFromBitbucket {
10 owner = "pygame";
11 repo = "pygame";
12 rev = "575c7a74d85a37db7c645421c02cf0b6b78a889f";
13 sha256 = "1i5xqmw93kfidcji2wacgkm5y4mcnbksy8iimih0729k19rbhznc";
14 };
15
16 buildInputs = [
17 SDL SDL_image SDL_mixer SDL_ttf libpng libjpeg
18 smpeg portmidi libX11
19 ];
20
21 # Tests fail because of no audio device and display.
22 doCheck = false;
23
24 preConfigure = ''
25 sed \
26 -e "s/^origincdirs = .*/origincdirs = []/" \
27 -e "s/^origlibdirs = .*/origlibdirs = []/" \
28 -i config_unix.py
29 ${lib.concatMapStrings (dep: ''
30 sed \
31 -e "/^origincdirs =/aorigincdirs += ['${lib.getDev dep}/include']" \
32 -e "/^origlibdirs =/aoriglibdirs += ['${lib.getLib dep}/lib']" \
33 -i config_unix.py
34 '') buildInputs
35 }
36 LOCALBASE=/ ${python.interpreter} config.py
37 '';
38
39 meta = with stdenv.lib; {
40 description = "Python library for games";
41 homepage = "http://www.pygame.org/";
42 license = licenses.lgpl21Plus;
43 platforms = platforms.linux;
44 };
45}