]> git.phdru.name Git - m_librarian.git/blob - setup.py
c423eee02c0167670a462e01e279ae837bb4f41a
[m_librarian.git] / setup.py
1 #!/usr/bin/env python
2
3 from os.path import abspath, dirname, join
4 from setuptools import setup
5 import sys
6
7 if sys.version_info[:2] == (2, 7):
8     from imp import load_source
9
10 elif sys.version_info >= (3, 4):
11     from importlib.machinery import SourceFileLoader
12     import types
13
14     def load_source(fullname, path):
15         loader = SourceFileLoader(fullname, path)
16         loaded = types.ModuleType(loader.name)
17         loader.exec_module(loaded)
18         return loaded
19
20 else:
21     raise ImportError("m_librarian requires Python 2.7 or 3.4+")
22
23 versionpath = join(abspath(dirname(__file__)), 'm_librarian', '__version__.py')
24 m_librarian_version = load_source('m_librarian_version', versionpath)
25
26 setup(
27     name='m_librarian',
28     version=m_librarian_version.__version__,
29     description='m_Librarian for LibRusEc/Flibusta libraries',
30     long_description=open('README.rst', 'rU').read(),
31     long_description_content_type="text/x-rst",
32     author='Oleg Broytman',
33     author_email='phd@phdru.name',
34     url='https://phdru.name/Software/Python/m_librarian/',
35     project_urls={
36         'Homepage': 'https://phdru.name/Software/Python/m_librarian/',
37         'Download': 'https://pypi.org/project/m_librarian/%s/'
38         % m_librarian_version.__version__,
39         'Documentation':
40             'https://phdru.name/Software/Python/m_librarian/docs/',
41         'Russian docs':
42             'https://phdru.name/Software/Python/m_librarian/docs/ru/',
43         'Git repo': 'https://git.phdru.name/m_librarian.git/',
44         'Github repo': 'https://github.com/phdru/m_librarian',
45         'Issue tracker': 'https://github.com/phdru/m_librarian/issues',
46     },
47     license='GPL',
48     keywords=['books', 'library', 'Flibusta', 'LibRusEc', 'lib.rus.ec'],
49     platforms="Any",
50     classifiers=[
51         'Development Status :: 2 - Pre-Alpha',
52         'Environment :: Console',
53         'Intended Audience :: End Users/Desktop',
54         'License :: OSI Approved :: GNU General Public License (GPL)',
55         'Natural Language :: English',
56         'Natural Language :: Russian',
57         'Operating System :: POSIX',
58         'Programming Language :: Python :: 2',
59         'Programming Language :: Python :: 2.7',
60         'Programming Language :: Python :: 3',
61         'Programming Language :: Python :: 3.4',
62         'Programming Language :: Python :: 3.5',
63         'Programming Language :: Python :: 3.6',
64         'Programming Language :: Python :: 3.7',
65     ],
66     packages=['m_librarian', 'm_librarian.web'],
67     package_data={'m_librarian': [
68         'glst/*.txt', 'glst/genres_*.glst',
69         'translations/*.mo'
70         ]
71     },
72     scripts=['scripts/ml-import.py', 'scripts/ml-initdb.py',
73              'scripts/ml-search.py', 'scripts/ml-web.py'],
74     python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
75     install_requires=[
76         'SQLObject>=2.2.1; python_version=="2.7"',
77         'SQLObject>=3.0.0; python_version>="3.4"',
78         'm_lib.defenc>=1.0',
79     ],
80     extras_require={
81         'pbar': ['m_lib>=3.1'],
82         'web': ['bottle', 'Cheetah3'],
83     },
84 )