forked from androguard/androguard
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
85 lines (75 loc) · 3.16 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#!/usr/bin/env python
from __future__ import print_function
import sys
import os
from androguard import __version__
from setuptools import setup, find_packages
# We do not support python versions <2.7 and python <3.4
if (sys.version_info.major == 3 and sys.version_info.minor < 4) or (sys.version_info.major == 2 and sys.version_info.minor < 7):
print("Unfortunatly, your python version is not supported!\n"
"Please upgrade at least to python 2.7 or 3.4!", file=sys.stderr)
sys.exit(1)
# PyQT5 is only available for python >=3.5
if sys.version_info <= (3, 4):
print("PyQT5 is probably not available for your system, the GUI might not work!", file=sys.stderr)
install_requires = ['future',
'networkx>=1.11',
'pygments',
'lxml',
'colorama',
'matplotlib',
'asn1crypto>=0.24.0',
]
# python version specific library versions:
#
# IPython Issue: For python2.x, a version <6 is required
if sys.version_info >= (3, 3):
install_requires.append('ipython>=5.0.0')
else:
install_requires.append('ipython>=5.0.0,<6')
# TODO add the permission mapping generation at a better place!
# from axplorer_to_androguard import generate_mappings
# generate_mappings()
setup(
name='ak-androguard',
description=(
'A fork of official Androguard project. '
'Androguard is a full python tool to play with Android files.'),
version=__version__,
license="Apache Licence, Version 2.0",
url="https://github.com/androguard/androguard",
download_url="https://github.com/androguard/androguard/releases",
packages=find_packages(),
package_data={
# add the json files, residing in the api_specific_resources package
"androguard.core.api_specific_resources": ["aosp_permissions/*.json",
"api_permission_mappings/*.json"],
"androguard.core.resources": ["public.xml"],
# Collect also the GUI files this way
"androguard.gui": ["annotation.ui", "search.ui", "androguard.ico"],
},
scripts=['androaxml.py',
'androarsc.py',
'androsign.py',
'androauto.py',
'androdis.py',
'androlyze.py',
'androdd.py',
'androgui.py',
'androcg.py',
],
install_requires=install_requires,
extras_require={
'GUI': ["pyperclip", "PyQt5"],
# We support the following three magic packages:
# * filemagic from https://pypi.python.org/pypi/filemagic
# * file-magic from https://pypi.python.org/pypi/file-magic (which is the "offical" one, and also in Debian)
# * python-magic from https://pypi.python.org/pypi/python-magic
# If you are installing on debian you can use python3-magic instead, which fulfills the dependency to file-magic
'magic': ['file-magic'],
'docs': ['sphinx', "sphinxcontrib-programoutput>0.8", 'sphinx_rtd_theme'],
'graphing': ['pydot'],
'tests': ['mock>=2.0', 'nose', 'codecov', 'coverage', 'nose-timer'],
},
setup_requires=['setuptools'],
)