1{
2 lib,
3 buildPythonPackage,
4 capstone,
5 fetchPypi,
6 gevent,
7 keystone-engine,
8 multiprocess,
9 pefile,
10 pyelftools,
11 pythonOlder,
12 python-fx,
13 python-registry,
14 pyyaml,
15 questionary,
16 termcolor,
17 unicorn,
18}:
19
20buildPythonPackage rec {
21 pname = "qiling";
22 version = "1.4.6";
23 format = "setuptools";
24
25 disabled = pythonOlder "3.7";
26
27 src = fetchPypi {
28 inherit pname version;
29 hash = "sha256-l3WQBlJic4lXCe5Z1FmoxaqOblE7uAaW2gG/nTn84Kc=";
30 };
31
32 propagatedBuildInputs = [
33 capstone
34 gevent
35 keystone-engine
36 multiprocess
37 pefile
38 pyelftools
39 python-fx
40 python-registry
41 pyyaml
42 termcolor
43 questionary
44 unicorn
45 ];
46
47 # Tests are broken (attempt to import a file that tells you not to import it,
48 # amongst other things)
49 doCheck = false;
50
51 pythonImportsCheck = [ "qiling" ];
52
53 meta = with lib; {
54 description = "Qiling Advanced Binary Emulation Framework";
55 homepage = "https://qiling.io/";
56 changelog = "https://github.com/qilingframework/qiling/releases/tag/${version}";
57 license = licenses.gpl2Only;
58 maintainers = [ ];
59 };
60}