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