rel
[librarian.git] / setup.py
index 13a953a..267195f 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -1,26 +1,64 @@
 #!/usr/bin/env python
 # -*- coding: utf-8 -*-
 #!/usr/bin/env python
 # -*- coding: utf-8 -*-
+#
+# This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+import os
+import os.path
+from setuptools import setup, find_packages
+
+
+def whole_tree(prefix, path):
+    files = []
+    for f in (f for f in os.listdir(os.path.join(prefix, path)) if not f[0]=='.'):
+        new_path = os.path.join(path, f)
+        if os.path.isdir(os.path.join(prefix, new_path)):
+            files.extend(whole_tree(prefix, new_path))
+        else:
+            files.append(new_path)
+    return files
 
 
-from distutils.core import setup
 
 setup(
     name='librarian',
 
 setup(
     name='librarian',
-    version='1.3',
+    version='2.5.1',
     description='Converter from WolneLektury.pl XML-based language to XHTML, TXT and other formats',
     author="Marek Stępniowski",
     author_email='marek@stepniowski.com',
     description='Converter from WolneLektury.pl XML-based language to XHTML, TXT and other formats',
     author="Marek Stępniowski",
     author_email='marek@stepniowski.com',
-    mantainer='Łukasz Rekucki',
-    mantainer_email='lrekucki@gmail.com',
-    url='http://redmine.nowoczesnapolska.org.pl/',
-    
-    packages=['librarian'],
-    package_data = {'librarian': ['xslt/*.xslt']},
+    maintainer='Radek Czajka',
+    maintainer_email='radoslaw.czajka@nowoczesnapolska.org.pl',
+    url='http://github.com/fnp/librarian',
+    packages=find_packages(where="src"),
+    package_dir={"": "src"},
+    package_data={'librarian': ['xslt/*.xslt', 'xslt/*.xml', 'epub/*', 'pdf/*', 'fb2/*', 'fonts/*'] +
+                                whole_tree(os.path.join(os.path.dirname(__file__), 'src/librarian'), 'res') +
+                                whole_tree(os.path.join(os.path.dirname(__file__), 'src/librarian'), 'font-optimizer') +
+                                whole_tree(os.path.join(os.path.dirname(__file__), 'src/librarian'), 'locale')},
     include_package_data=True,
     include_package_data=True,
-    install_requires=['lxml>=2.2'],
-    scripts=['scripts/book2html', 
-             'scripts/book2txt', 
-             'scripts/bookfragments', 
+    install_requires=[
+        'lxml>=2.2,<5.0',
+        'Pillow',
+        'six',
+        'texml',
+        'ebooklib',
+        'aeneas',
+        'mutagen',
+        'qrcode',
+    ],
+    entry_points = {
+        "console_scripts": [
+            "librarian=librarian.command_line:main"
+        ]
+    },
+    scripts=['scripts/book2html',
+             'scripts/book2txt',
+             'scripts/book2epub',
+             'scripts/book2mobi',
+             'scripts/book2pdf',
+             'scripts/book2fb2',
+             'scripts/book2partner',
+             'scripts/book2cover',
+             'scripts/bookfragments',
              'scripts/genslugs'],
              'scripts/genslugs'],
-             
-    tests_require=['nose>=0.11', 'coverage>=3.0.1'],
 )
 )