Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / python-modules / pygame_sdl2 / default.nix
blobbf123eef02a5c61e03f9cfb09f1dde49892f5ae3
1 { lib, buildPythonPackage, fetchurl, isPy27, renpy
2 , cython, SDL2, SDL2_image, SDL2_ttf, SDL2_mixer, libjpeg, libpng }:
4 buildPythonPackage rec {
5   pname = "pygame_sdl2";
6   version = "2.1.0";
7   renpy_version = renpy.base_version;
8   name = "${pname}-${version}-${renpy_version}";
10   src = fetchurl {
11     url = "https://www.renpy.org/dl/${renpy_version}/pygame_sdl2-${version}-for-renpy-${renpy_version}.tar.gz";
12     hash = "sha256-u9DIFKd+uyphH3ETMJWYqt7YFyeIgBWoXUO3rC+RWjc=";
13   };
15   # force rebuild of headers needed for install
16   prePatch = ''
17     rm -rf gen gen3
18   '';
20   # Remove build tag which produces invaild version
21   postPatch = ''
22     sed -i '2d' setup.cfg
23   '';
25   nativeBuildInputs = [
26     SDL2.dev cython
27   ];
29   buildInputs = [
30     SDL2 SDL2_image SDL2_ttf SDL2_mixer
31     libjpeg libpng
32   ];
35   doCheck = isPy27; # python3 tests are non-functional
37   postInstall = ''
38     ( cd "$out"/include/python*/ ;
39       ln -s pygame-sdl2 pygame_sdl2 || true ; )
40   '';
42   meta = with lib; {
43     description = "A reimplementation of parts of pygame API using SDL2";
44     homepage    = "https://github.com/renpy/pygame_sdl2";
45     # Some parts are also available under Zlib License
46     license     = licenses.lgpl2;
47     maintainers = with maintainers; [ raskin ];
48   };