1{ stdenv, lib, buildPythonPackage, fetchFromGitHub, file
2, isPy3k, mock, unittest2 }:
3
4buildPythonPackage {
5 pname = "filemagic";
6 version = "1.6";
7 disabled = !isPy3k; # asserts on ResourceWarning
8
9 # Don't use the PyPI source because it's missing files required for testing
10 src = fetchFromGitHub {
11 owner = "aliles";
12 repo = "filemagic";
13 rev = "138649062f769fb10c256e454a3e94ecfbf3017b";
14 sha256 = "1jxf928jjl2v6zv8kdnfqvywdwql1zqkm1v5xn1d5w0qjcg38d4n";
15 };
16
17 postPatch = ''
18 substituteInPlace magic/api.py --replace "ctypes.util.find_library('magic')" \
19 "'${file}/lib/libmagic${stdenv.hostPlatform.extensions.sharedLibrary}'"
20 '';
21
22 checkInputs = [ mock ] ++ lib.optionals (!isPy3k) [ unittest2 ];
23
24 meta = with lib; {
25 description = "File type identification using libmagic";
26 homepage = "https://github.com/aliles/filemagic";
27 license = licenses.asl20;
28 maintainers = with maintainers; [ earvstedt ];
29 };
30}