maestral/setup.py

86 lines
2.2 KiB
Python
Raw Normal View History

2020-04-20 14:18:19 +03:00
# -*- coding: utf-8 -*-
# system imports
2018-11-26 20:41:23 +03:00
from setuptools import setup, find_packages
import importlib.util
2020-04-20 14:18:19 +03:00
# local imports (must not depend on 3rd party packages)
from maestral import __version__, __author__, __url__
2020-02-22 14:26:59 +03:00
# proceed with actual install
2020-03-02 02:23:53 +03:00
install_requires = [
2020-04-06 23:24:10 +03:00
'atomicwrites>=1.0.0',
'bugsnag>=3.4.0',
2020-03-19 18:29:42 +03:00
'click>=7.1.1',
'dropbox>=10.0.0',
2020-05-15 17:30:54 +03:00
'fasteners',
2020-03-02 02:23:53 +03:00
'importlib_metadata;python_version<"3.8"',
'dbus-next;sys_platform=="linux"',
2020-03-02 02:23:53 +03:00
'keyring>=19.0.0',
2020-04-06 23:24:10 +03:00
'keyrings.alt>=3.1.0',
2020-03-02 02:23:53 +03:00
'packaging',
2020-04-06 23:24:10 +03:00
'pathspec>=0.5.8',
2020-06-30 17:25:16 +03:00
'Pyro5>=5.10',
2020-03-02 02:23:53 +03:00
'requests',
'rubicon-objc>=0.3.1;sys_platform=="darwin"',
'sdnotify',
'setuptools',
'sqlalchemy>=1.3.0',
'watchdog>=0.10.0',
2020-03-02 02:23:53 +03:00
]
2020-04-21 13:34:20 +03:00
gui_requires = [
2020-05-20 22:31:37 +03:00
'maestral_qt>=1.0.3;sys_platform=="linux"',
'maestral_cocoa>=1.0.3;sys_platform=="darwin"',
2020-04-21 13:34:20 +03:00
]
2020-04-21 13:34:20 +03:00
syslog_requires = ['systemd-python']
# if GUI is installed, always update it as well
if importlib.util.find_spec('maestral_qt') or importlib.util.find_spec('maestral_cocoa'):
install_requires.extend(gui_requires)
2020-03-02 02:23:53 +03:00
2018-12-03 04:42:57 +03:00
setup(
2020-01-29 22:26:57 +03:00
name='maestral',
2019-08-20 14:23:14 +03:00
version=__version__,
2020-01-29 22:26:57 +03:00
description='Open-source Dropbox client for macOS and Linux.',
url=__url__,
2020-02-24 01:38:19 +03:00
author=__author__,
author_email='ss2151@cam.ac.uk',
2020-01-29 22:26:57 +03:00
license='MIT',
long_description=open('README.md').read(),
2019-07-16 15:50:24 +03:00
long_description_content_type='text/markdown',
2018-12-03 04:42:57 +03:00
packages=find_packages(),
package_data={
2020-02-08 01:42:19 +03:00
'maestral': [
'resources/*',
2020-02-21 03:01:58 +03:00
],
},
2020-01-29 22:26:57 +03:00
setup_requires=['wheel'],
2020-03-02 02:23:53 +03:00
install_requires=install_requires,
extras_require={
2020-04-21 13:34:20 +03:00
'gui': gui_requires,
'syslog': syslog_requires,
},
2018-12-03 04:42:57 +03:00
zip_safe=False,
entry_points={
2020-02-21 03:01:58 +03:00
'console_scripts': ['maestral=maestral.cli:main'],
2019-08-14 20:42:11 +03:00
},
2019-02-26 14:46:00 +03:00
python_requires='>=3.6',
2019-08-06 16:25:54 +03:00
classifiers=[
'License :: OSI Approved :: MIT License',
'Operating System :: Unix',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
2019-10-23 23:20:14 +03:00
'Programming Language :: Python :: 3.8',
2019-08-06 16:25:54 +03:00
'Programming Language :: Python :: 3 :: Only',
],
data_files=[
2020-02-17 20:17:13 +03:00
('share/icons/hicolor/512x512/apps', ['maestral/resources/maestral.png'])
],
2019-08-14 20:42:11 +03:00
)