1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 setuptools,
8
9 # dependencies
10 joblib,
11 keras,
12 lz4,
13 pythonAtLeast,
14 distutils,
15
16 # tests
17 pytestCheckHook,
18}:
19
20buildPythonPackage rec {
21 pname = "mtcnn";
22 version = "1.0.0";
23 pyproject = true;
24
25 src = fetchFromGitHub {
26 owner = "ipazc";
27 repo = "mtcnn";
28 tag = "v${version}";
29 hash = "sha256-gp+jfa1arD3PpJpuRFKIUznV0Lyjt3DPn/HHUviDXhk=";
30 };
31
32 build-system = [ setuptools ];
33
34 dependencies =
35 [
36 joblib
37 lz4
38 ]
39 ++ lib.optionals (pythonAtLeast "3.12") [
40 distutils
41 ];
42
43 pythonImportsCheck = [ "mtcnn" ];
44
45 nativeCheckInputs = [
46 keras
47 pytestCheckHook
48 ];
49
50 meta = {
51 description = "MTCNN face detection implementation for TensorFlow";
52 homepage = "https://github.com/ipazc/mtcnn";
53 changelog = "https://github.com/ipazc/mtcnn/releases/tag/v${version}";
54 license = lib.licenses.mit;
55 maintainers = with lib.maintainers; [ derdennisop ];
56 };
57}