1{ stdenv, fetchPypi, buildPythonPackage 2, libmediainfo 3, setuptools_scm 4, pytest, glibcLocales }: 5 6buildPythonPackage rec { 7 pname = "pymediainfo"; 8 version = "2.3.0"; 9 10 src = fetchPypi { 11 inherit pname version; 12 sha256 = "1d0mxxycacimy46b08q44xyxkyji7rrs7viwc3wkpckhqs54q24x"; 13 }; 14 15 postPatch = '' 16 substituteInPlace pymediainfo/__init__.py \ 17 --replace 'CDLL(library_file)' \ 18 'CDLL("${libmediainfo}/lib/libmediainfo${stdenv.hostPlatform.extensions.sharedLibrary}")' \ 19 --replace 'CDLL("libmediainfo.0.dylib")' \ 20 'CDLL("${libmediainfo}/lib/libmediainfo.0${stdenv.hostPlatform.extensions.sharedLibrary}")' \ 21 --replace 'CDLL("libmediainfo.dylib")' \ 22 'CDLL("${libmediainfo}/lib/libmediainfo${stdenv.hostPlatform.extensions.sharedLibrary}")' \ 23 --replace 'CDLL("libmediainfo.so.0")' \ 24 'CDLL("${libmediainfo}/lib/libmediainfo${stdenv.hostPlatform.extensions.sharedLibrary}.0")' 25 ''; 26 27 nativeBuildInputs = [ setuptools_scm ]; 28 29 checkInputs = [ glibcLocales pytest ]; 30 31 checkPhase = '' 32 export LC_ALL=en_US.UTF-8 33 py.test -k 'not test_parse_url' tests 34 ''; 35 36 meta = with stdenv.lib; { 37 description = "Python wrapper for the mediainfo library"; 38 homepage = https://github.com/sbraz/pymediainfo; 39 license = licenses.mit; 40 maintainers = with maintainers; [ jfrankenau ]; 41 }; 42}