2018-02-02 15:36:29 +00:00
|
|
|
#!/usr/bin/env python3
|
2018-03-26 15:38:49 +00:00
|
|
|
import os.path
|
2018-07-03 13:53:16 +00:00
|
|
|
import re
|
2018-09-03 13:44:38 +00:00
|
|
|
from distutils.errors import DistutilsError
|
2018-03-26 15:38:49 +00:00
|
|
|
|
2018-09-03 13:44:38 +00:00
|
|
|
from setuptools import Command, find_packages, setup
|
2014-02-03 21:24:54 +00:00
|
|
|
|
2017-06-14 21:06:54 +00:00
|
|
|
install_requires = [
|
2018-09-03 13:44:38 +00:00
|
|
|
"setuptools>=19.0",
|
|
|
|
"ecdsa>=0.9",
|
|
|
|
"mnemonic>=0.17",
|
2019-07-19 13:50:42 +00:00
|
|
|
"shamir-mnemonic>=0.1.0",
|
2018-09-03 13:44:38 +00:00
|
|
|
"requests>=2.4.0",
|
2018-10-03 13:11:21 +00:00
|
|
|
"click>=7,<8",
|
2018-09-03 13:44:38 +00:00
|
|
|
"pyblake2>=0.9.3",
|
|
|
|
"libusb1>=1.6.4",
|
|
|
|
"construct>=2.9",
|
2018-11-12 11:55:28 +00:00
|
|
|
"typing_extensions>=3.6",
|
2017-06-14 21:06:54 +00:00
|
|
|
]
|
2016-10-03 18:37:48 +00:00
|
|
|
|
2018-05-30 13:04:46 +00:00
|
|
|
CWD = os.path.dirname(os.path.realpath(__file__))
|
|
|
|
|
2018-03-26 15:38:49 +00:00
|
|
|
|
2018-07-03 13:53:16 +00:00
|
|
|
def read(*path):
|
|
|
|
filename = os.path.join(CWD, *path)
|
2018-09-03 13:44:38 +00:00
|
|
|
with open(filename, "r") as f:
|
2018-06-19 14:54:54 +00:00
|
|
|
return f.read()
|
|
|
|
|
|
|
|
|
2018-07-03 13:53:16 +00:00
|
|
|
def find_version():
|
|
|
|
version_file = read("trezorlib", "__init__.py")
|
|
|
|
version_match = re.search(r"^__version__ = \"(.*)\"$", version_file, re.M)
|
|
|
|
if version_match:
|
|
|
|
return version_match.group(1)
|
|
|
|
else:
|
|
|
|
raise RuntimeError("Version string not found")
|
|
|
|
|
|
|
|
|
2018-03-26 15:38:49 +00:00
|
|
|
class PrebuildCommand(Command):
|
2019-05-14 14:22:23 +00:00
|
|
|
description = "Deprecated. Run 'make gen' instead."
|
2018-03-26 15:38:49 +00:00
|
|
|
user_options = []
|
|
|
|
|
|
|
|
def initialize_options(self):
|
|
|
|
pass
|
|
|
|
|
|
|
|
def finalize_options(self):
|
|
|
|
pass
|
|
|
|
|
|
|
|
def run(self):
|
2019-05-14 14:22:23 +00:00
|
|
|
raise DistutilsError(self.description)
|
2018-03-26 15:38:49 +00:00
|
|
|
|
|
|
|
|
2014-02-03 21:24:54 +00:00
|
|
|
setup(
|
2018-09-03 13:44:38 +00:00
|
|
|
name="trezor",
|
2018-07-03 13:53:16 +00:00
|
|
|
version=find_version(),
|
2019-06-17 18:27:55 +00:00
|
|
|
author="Trezor",
|
2018-09-03 13:44:38 +00:00
|
|
|
author_email="info@trezor.io",
|
|
|
|
license="LGPLv3",
|
2019-06-17 18:27:55 +00:00
|
|
|
description="Python library for communicating with Trezor Hardware Wallet",
|
2018-09-03 13:44:38 +00:00
|
|
|
long_description="{}\n\n{}".format(read("README.md"), read("CHANGELOG.md")),
|
|
|
|
long_description_content_type="text/markdown",
|
|
|
|
url="https://github.com/trezor/python-trezor",
|
2018-06-18 15:35:43 +00:00
|
|
|
packages=find_packages(),
|
2018-09-03 13:44:38 +00:00
|
|
|
package_data={"trezorlib": ["coins.json"]},
|
|
|
|
scripts=["trezorctl"],
|
2016-10-03 18:37:48 +00:00
|
|
|
install_requires=install_requires,
|
2018-05-04 13:54:23 +00:00
|
|
|
extras_require={
|
2018-09-03 13:44:38 +00:00
|
|
|
"hidapi": ["hidapi>=0.7.99.post20"],
|
2019-03-07 16:45:50 +00:00
|
|
|
"ethereum": ["rlp>=1.1.0", "web3>=4.8"],
|
2018-05-04 13:54:23 +00:00
|
|
|
},
|
2018-10-01 11:52:41 +00:00
|
|
|
python_requires=">=3.5",
|
2014-02-03 21:24:54 +00:00
|
|
|
include_package_data=True,
|
|
|
|
zip_safe=False,
|
|
|
|
classifiers=[
|
2018-09-03 13:44:38 +00:00
|
|
|
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
|
|
|
|
"Operating System :: POSIX :: Linux",
|
|
|
|
"Operating System :: Microsoft :: Windows",
|
|
|
|
"Operating System :: MacOS :: MacOS X",
|
|
|
|
"Programming Language :: Python :: 3 :: Only",
|
2014-02-03 21:24:54 +00:00
|
|
|
],
|
2018-09-03 13:44:38 +00:00
|
|
|
cmdclass={"prebuild": PrebuildCommand},
|
2014-02-03 21:24:54 +00:00
|
|
|
)
|