from setuptools import setup, find_packages
import os
import shutil
lib_path = "../../target/release/libproofmode.so"
if not os.path.exists(lib_path):
lib_path = "../../target/release/libproofmode.dylib"
if os.path.exists(lib_path):
dest_dir = "python/proofmode"
os.makedirs(dest_dir, exist_ok=True)
shutil.copy(lib_path, dest_dir)
setup(
name="proofmode",
version="0.8.4",
description="Python bindings for ProofMode - cryptographic media authentication",
long_description=open("../../README.md").read() if os.path.exists("../../README.md") else "",
long_description_content_type="text/markdown",
author="Guardian Project",
author_email="support@guardianproject.info",
url="https://gitlab.com/guardianproject/proofmode/proofmode-rust",
project_urls={
"Documentation": "https://gitlab.com/guardianproject/proofmode/proofmode-rust/-/wikis/home",
"Source": "https://gitlab.com/guardianproject/proofmode/proofmode-rust",
"Tracker": "https://gitlab.com/guardianproject/proofmode/proofmode-rust/-/issues",
},
packages=find_packages(where="python"),
package_dir={"": "python"},
package_data={
"proofmode": ["*.so", "*.dylib", "*.dll"],
},
install_requires=[
"click>=8.0",
"rich>=10.0",
],
entry_points={
"console_scripts": [
"proofmode=proofmode.cli:main",
],
},
python_requires=">=3.8",
classifiers=[
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Rust",
"Topic :: Multimedia :: Graphics",
"Topic :: Security :: Cryptography",
],
)