50e9780e66
for aqt on qt/Makefile, because .whl files are just zip simple zip files and do not support dynamic versioning. Also, there is no restriction for aqt to be shipped as source tarball because it does not ship any binaries.
73 lines
1.8 KiB
Python
73 lines
1.8 KiB
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
import os
|
|
from distutils.version import LooseVersion
|
|
|
|
import setuptools
|
|
|
|
|
|
def package_files(directory):
|
|
entries = []
|
|
for (path, directories, filenames) in os.walk(directory):
|
|
entries.append((path, [os.path.join(path, f) for f in filenames]))
|
|
return entries
|
|
|
|
|
|
# just the Python files for type hints?
|
|
pyonly = os.getenv("PYFILESONLY")
|
|
|
|
if pyonly:
|
|
extra_files = []
|
|
else:
|
|
extra_files = package_files("aqt_data")
|
|
|
|
install_requires = [
|
|
"beautifulsoup4",
|
|
"requests",
|
|
"send2trash",
|
|
"pyaudio",
|
|
"markdown",
|
|
"jsonschema",
|
|
'psutil; sys.platform == "win32"',
|
|
'pywin32; sys.platform == "win32"',
|
|
'darkdetect; sys.platform == "darwin"',
|
|
]
|
|
|
|
|
|
try:
|
|
import PyQt5 as IS_PYQT_INSTALLED
|
|
|
|
except (ImportError, ValueError):
|
|
IS_PYQT_INSTALLED = None
|
|
|
|
try:
|
|
from PyQt5.Qt import PYQT_VERSION_STR
|
|
|
|
except (ImportError, ValueError):
|
|
PYQT_VERSION_STR = None
|
|
|
|
# https://github.com/ankitects/anki/pull/530
|
|
if not IS_PYQT_INSTALLED or (
|
|
PYQT_VERSION_STR and LooseVersion(PYQT_VERSION_STR) >= LooseVersion("5.12")
|
|
):
|
|
install_requires.append("pyqt5")
|
|
install_requires.append("pyqtwebengine")
|
|
|
|
|
|
setuptools.setup(
|
|
name="aqt",
|
|
version="2.1.24", # automatically updated
|
|
author="Ankitects Pty Ltd",
|
|
description="Anki's Qt GUI code",
|
|
long_description="Anki's QT GUI code",
|
|
long_description_content_type="text/markdown",
|
|
url="https://apps.ankiweb.net",
|
|
packages=setuptools.find_packages(".", exclude=["tests"]),
|
|
data_files=extra_files,
|
|
license="License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
|
|
classifiers=[],
|
|
python_requires=">=3.7",
|
|
package_data={"aqt": ["py.typed"]},
|
|
install_requires=install_requires,
|
|
)
|