Reticulum/setup.py

58 lines
1.9 KiB
Python
Raw Normal View History

2020-04-27 11:33:26 +00:00
import setuptools
2022-06-10 09:27:31 +00:00
import sys
pure_python = False
2022-06-10 10:46:20 +00:00
pure_notice = "\n\n**Warning!** *This package is the zero-dependency version of Reticulum. You should almost certainly use the [normal package](https://pypi.org/project/rns) instead. Do NOT install this package unless you know exactly why you are doing it!*"
2022-06-10 09:27:31 +00:00
if '--pure' in sys.argv:
pure_python = True
sys.argv.remove('--pure')
print("Building pure-python wheel")
2020-04-27 11:33:26 +00:00
2021-08-19 12:10:37 +00:00
exec(open("RNS/_version.py", "r").read())
2020-04-27 11:33:26 +00:00
with open("README.md", "r") as fh:
long_description = fh.read()
2022-06-10 09:27:31 +00:00
if pure_python:
pkg_name = "rnspure"
requirements = []
2022-06-10 10:46:20 +00:00
long_description = long_description.replace("</p>", "</p>"+pure_notice)
2022-06-10 09:27:31 +00:00
else:
pkg_name = "rns"
requirements = ['cryptography>=3.4.7', 'pyserial>=3.5', 'netifaces']
2023-03-07 15:30:40 +00:00
excluded_modules = exclude=["tests.*", "tests"]
packages = setuptools.find_packages(exclude=excluded_modules)
2020-04-27 11:33:26 +00:00
setuptools.setup(
2022-06-10 09:27:31 +00:00
name=pkg_name,
2021-08-19 12:10:37 +00:00
version=__version__,
2020-04-27 11:33:26 +00:00
author="Mark Qvist",
author_email="mark@unsigned.io",
description="Self-configuring, encrypted and resilient mesh networking stack for LoRa, packet radio, WiFi and everything in between",
long_description=long_description,
long_description_content_type="text/markdown",
2022-07-01 15:31:07 +00:00
url="https://reticulum.network/",
2023-03-07 15:30:40 +00:00
packages=packages,
2020-04-27 11:33:26 +00:00
classifiers=[
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],
2021-09-24 09:21:08 +00:00
entry_points= {
'console_scripts': [
'rnsd=RNS.Utilities.rnsd:main',
2021-09-25 09:03:43 +00:00
'rnstatus=RNS.Utilities.rnstatus:main',
2021-09-24 12:15:15 +00:00
'rnprobe=RNS.Utilities.rnprobe:main',
2021-09-24 09:21:08 +00:00
'rnpath=RNS.Utilities.rnpath:main',
2023-02-04 14:59:58 +00:00
'rnid=RNS.Utilities.rnid:main',
'rncp=RNS.Utilities.rncp:main',
2022-05-24 18:14:43 +00:00
'rnx=RNS.Utilities.rnx:main',
2022-11-01 21:40:09 +00:00
'rnodeconf=RNS.Utilities.rnodeconf:main',
2021-09-24 09:21:08 +00:00
]
},
2022-06-10 09:27:31 +00:00
install_requires=requirements,
2023-05-04 10:23:16 +00:00
python_requires='>=3.7',
2021-09-05 02:58:42 +00:00
)