-
Notifications
You must be signed in to change notification settings - Fork 46
Expand file tree
/
Copy pathsetup.py
More file actions
92 lines (82 loc) · 2.81 KB
/
setup.py
File metadata and controls
92 lines (82 loc) · 2.81 KB
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
86
87
88
89
90
91
92
#!/usr/bin/env python3
from pathlib import Path
import importlib.util
from setuptools import setup, find_packages
# Paths
ROOT = Path(__file__).resolve().parent
PKG = "friTap"
ABOUT = ROOT / PKG / "about.py"
README = ROOT / "README.md"
# Load metadata from about.py safely
spec = importlib.util.spec_from_file_location(f"{PKG}.about", ABOUT)
about = importlib.util.module_from_spec(spec)
spec.loader.exec_module(about) # type: ignore[attr-defined]
# Long description
long_description = README.read_text(encoding="utf-8") if README.exists() else ""
# Runtime requirements — single source of truth is requirements.txt
install_requires = (ROOT / "requirements.txt").read_text().splitlines()
setup(
name="friTap",
version=about.__version__,
description=(
"Simplifies (SSL/TLS) traffic analysis and key extraction using Frida "
"across major platforms."
),
long_description=long_description,
long_description_content_type="text/markdown",
url="https://github.com/fkie-cad/friTap",
author=about.__author__,
author_email="daniel.baier@fkie.fraunhofer.de",
license="GPL-3.0-only", # GPLv3 or later (see LICENSE file)
packages=find_packages(exclude=("create_legacy_agent", "create_standalone_release")),
python_requires=">=3.10",
install_requires=install_requires,
extras_require={
"dev": [
"pytest>=7.0",
"pytest-cov>=4.0",
"pytest-mock>=3.10",
"pytest-timeout>=2.1",
"ruff>=0.1.0",
],
},
# Include non-Python assets inside the package
package_data={
"friTap": [
"fritap_agent.js",
"fritap_agent_legacy.js",
"assets/tcpdump_binaries/*",
"tui/css/*.tcss",
"patterns/*.json",
"plugins/shared_utility/*.js",
"plugins/examples/README.md",
]
},
include_package_data=True,
data_files=[
("integrations/wireshark", [
"integrations/wireshark/fritap-extcap",
"integrations/wireshark/install.sh",
]),
],
classifiers=[
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Operating System :: OS Independent",
"Natural Language :: English",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: JavaScript",
"Topic :: Security",
"Topic :: Software Development :: Debuggers",
],
keywords=["mobile", "instrumentation", "frida", "hook", "SSL decryption"],
entry_points={
"console_scripts": [
"fritap=friTap.friTap:main",
],
},
project_urls={
"Source": "https://github.com/fkie-cad/friTap",
"Issues": "https://github.com/fkie-cad/friTap/issues",
"Documentation": "https://fkie-cad.github.io/friTap/",
},
)