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