1{ buildPythonPackage, fetchFromGitHub, pillow, click, dlib, numpy 2, face_recognition_models, lib, flake8, pytest, glibcLocales 3}: 4 5buildPythonPackage rec { 6 pname = "face_recognition"; 7 version = "1.3.0"; 8 9 src = fetchFromGitHub { 10 repo = pname; 11 owner = "ageitgey"; 12 rev = "d34c622bf42e2c619505a4884017051ecf61ac77"; 13 sha256 = "052878vnh3vbrsvmpgr0bx78k524dlxn47b2xakzbxk7dyjrgcli"; 14 }; 15 16 postPatch = '' 17 substituteInPlace setup.py --replace "flake8==2.6.0" "flake8" 18 ''; 19 20 propagatedBuildInputs = [ pillow click dlib numpy face_recognition_models ]; 21 22 # Our dlib is compiled with AVX instructions by default which breaks 23 # with "Illegal instruction" on some builders due to missing hardware features. 24 # 25 # As this makes the build fairly unreliable, it's better to skip the test and to ensure that 26 # the build is working and after each change to the package, manual testing should be done. 27 doCheck = false; 28 29 # Although tests are disabled by default, checkPhase still exists, so 30 # maintainers can check the package's functionality locally before modifying it. 31 checkInputs = [ flake8 pytest glibcLocales ]; 32 checkPhase = '' 33 LC_ALL="en_US.UTF-8" py.test 34 ''; 35 36 meta = with lib; { 37 license = licenses.mit; 38 homepage = "https://github.com/ageitgey/face_recognition"; 39 maintainers = with maintainers; [ ma27 ]; 40 description = "The world's simplest facial recognition api for Python and the command line"; 41 }; 42}