summary refs log tree commit diff
path: root/pkgs/development/python-modules/py-desmume/default.nix
blob: a249b0aede131a79cd380c8a40fd7812a903e9f6 (plain) (blame)
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
{ lib, buildPythonPackage, fetchFromGitHub, GitPython
, libpcap, meson, ninja, pillow, pkg-config, pygobject3, SDL2
, alsaLib, soundtouch, openal
}:

let
  desmume = fetchFromGitHub {
    owner = "SkyTemple";
    repo = "desmume";
    rev = "8e7af8ada883b7e91344985236f7c7c04ee795d7";
    sha256 = "0svmv2rch9q347gbpbws4agymas8n014gh1ssaf91wx7jwn53842";
  };
in
buildPythonPackage rec {
  pname = "py-desmume";
  version = "0.0.3.post2";

  src = fetchFromGitHub {
    owner = "SkyTemple";
    repo = pname;
    rev = version;
    sha256 = "1chsg70k8kqnlasn88b04ww3yl0lay1bjxvz6lhp6s2cvsxv03x1";
  };

  postPatch = ''
    cp -R --no-preserve=mode ${desmume} __build_desmume
  '';

  buildInputs = [ GitPython libpcap SDL2 alsaLib soundtouch openal ];
  nativeBuildInputs = [ meson ninja pkg-config ];
  propagatedBuildInputs = [ pillow pygobject3 ];

  hardeningDisable = [ "format" ];

  doCheck = false; # there are no tests
  pythonImportsCheck = [ "desmume" ];

  meta = with lib; {
    homepage = "https://github.com/SkyTemple/py-desmume";
    description = "Python library to interface with DeSmuME, the Nintendo DS emulator";
    license = licenses.gpl3Plus;
    maintainers = with maintainers; [ xfix ];
  };
}