Subversion Repositories basico

Rev

Rev 342 | Rev 352 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
340 t00mlabs 1
#!/usr/bin/python
2
# -*- coding: utf-8 -*-
3
"""
4
# File: setup.py
5
# Author: Tomás Vírseda
6
# License: GPL v3
7
# Description: setup.py tells you that the module/package you are about
8
# to install has been packaged and distributed with Distutils, which is
9
# the standard for distributing Python Modules.
10
"""
11
 
12
import os
13
from os.path import sep as SEP
14
import sys
15
import subprocess
16
from setuptools import setup
17
 
18
if sys.platform == 'win32':
19
    import os.path
20
    HOME = os.path.expanduser('~')
21
else:
22
    HOME = os.environ['HOME']
23
 
24
HOME_DESKTOP_DIR = HOME + SEP + '.local' + SEP + 'share' + SEP + 'applications'
25
HOME_ICONS_DIR = HOME + SEP + '.local' + SEP + 'share' + SEP + 'icons'
26
 
27
 
28
with open('README.adoc') as f:
29
    long_description = f.read()
30
 
31
 
32
def add_data():
33
    try:
34
        data_files = [
35
            ('share/applications', ['basico/data/desktop/basico.desktop']),
36
            ('share/icons', ['basico/data/icons/basico-component.svg']),
37
            ('basico/data/res/selenium/drivers',
38
                [
39
                    'basico/data/res/selenium/drivers/geckodriver',
40
                    'basico/data/res/selenium/drivers/geckodriver.exe',
41
                    'basico/data/res/selenium/drivers/geckodriver.README'
42
                ]),
348 t00mlabs 43
            ('basico/data/res/css',
44
                [
45
                    'basico/data/res/css/basico.css',
46
                ]),
340 t00mlabs 47
            ('basico/data/tpl', ['basico/data/tpl/report.html']),
48
            ('basico/data/icons',
49
                [
50
                    'basico/data/icons/basico.svg',
51
                    'basico/data/icons/basico-about.svg',
52
                    'basico/data/icons/basico-add.svg',
53
                    'basico/data/icons/basico-annotation.svg',
54
                    'basico/data/icons/basico-annotation-type-bookmark.svg',
55
                    'basico/data/icons/basico-annotation-type-note.svg',
56
                    'basico/data/icons/basico-annotation-type-fixme.svg',
57
                    'basico/data/icons/basico-annotation-type-incident.svg',
58
                    'basico/data/icons/basico-annotation-type-procedure.svg',
59
                    'basico/data/icons/basico-annotation-type-snippet.svg',
60
                    'basico/data/icons/basico-annotation-type-template.svg',
61
                    'basico/data/icons/basico-annotation-type-todo.svg',
62
                    'basico/data/icons/basico-annotation-type-email.svg',
63
                    'basico/data/icons/basico-annotation-type-meeting.svg',
64
                    'basico/data/icons/basico-archived.svg',
65
                    'basico/data/icons/basico-backup.svg',
66
                    'basico/data/icons/basico-backup-text-generic.svg',
67
                    'basico/data/icons/basico-backup-text-csv.svg',
68
                    'basico/data/icons/basico-backup-ms-excel.svg',
69
                    'basico/data/icons/basico-backup-restore.svg',
70
                    'basico/data/icons/basico-bookmark-off.svg',
71
                    'basico/data/icons/basico-bookmark-on.svg',
72
                    'basico/data/icons/basico-bookmarks.svg',
73
                    'basico/data/icons/basico-browse.svg',
74
                    'basico/data/icons/basico-category.svg',
75
                    'basico/data/icons/basico-chart.svg',
76
                    'basico/data/icons/basico-check-accept.svg',
77
                    'basico/data/icons/basico-check-cancel.svg',
78
                    'basico/data/icons/basico-chronologic.svg',
79
                    'basico/data/icons/basico-clipboard.svg',
80
                    'basico/data/icons/basico-comments.svg',
81
                    'basico/data/icons/basico-component.svg',
82
                    'basico/data/icons/basico-dashboard.svg',
83
                    'basico/data/icons/basico-drafts.svg',
84
                    'basico/data/icons/basico-delete.svg',
85
                    'basico/data/icons/basico-description.svg',
86
                    'basico/data/icons/basico-dialog-error.svg',
87
                    'basico/data/icons/basico-dialog-information.svg',
88
                    'basico/data/icons/basico-dialog-ok.svg',
89
                    'basico/data/icons/basico-dialog-question.svg',
90
                    'basico/data/icons/basico-dialog-warning.svg',
91
                    'basico/data/icons/basico-duplicate.svg',
92
                    'basico/data/icons/basico-empty.svg',
93
                    'basico/data/icons/basico-filter.svg',
94
                    'basico/data/icons/basico-find.svg',
95
                    'basico/data/icons/basico-fullscreen.svg',
96
                    'basico/data/icons/basico-help.svg',
97
                    'basico/data/icons/basico-inbox.svg',
98
                    'basico/data/icons/basico-info.svg',
99
                    'basico/data/icons/basico-jump-sapnote.svg',
100
                    'basico/data/icons/basico-logviewer.svg',
101
                    'basico/data/icons/basico-menu-system.svg',
102
                    'basico/data/icons/basico-priority.svg',
103
                    'basico/data/icons/basico-annotation-priority-high.svg',
104
                    'basico/data/icons/basico-annotation-priority-normal.svg',
105
                    'basico/data/icons/basico-annotation-priority-low.svg',
106
                    'basico/data/icons/basico-refresh.svg',
107
                    'basico/data/icons/basico-restore.svg',
108
                    'basico/data/icons/basico-select.svg',
109
                    'basico/data/icons/basico-settings.svg',
110
                    'basico/data/icons/basico-sid.svg',
111
                    'basico/data/icons/basico-stats.svg',
112
                    'basico/data/icons/basico-tag.svg',
113
                    'basico/data/icons/basico-tags.svg',
114
                    'basico/data/icons/basico-collection.svg',
115
                    'basico/data/icons/basico-type.svg',
116
                    'basico/data/icons/basico-unfullscreen.svg',
117
                ]),
118
            ('basico/data/share', []),
119
            ("basico/data/share/docs",
120
                    [
121
                    'AUTHORS',
122
                    'LICENSE',
123
                    'README.adoc',
124
                    'INSTALL',
125
                    'CREDITS',
126
                    'Changelog'
127
                    ]),
128
            ]
129
 
130
        # ~ if not os.path.isdir('mo'):
131
            # ~ os.mkdir('mo')
132
        # ~ for pofile in os.listdir('po'):
133
            # ~ if pofile.endswith('po'):
134
                # ~ lang = pofile.strip('.po')
135
                # ~ modir = os.path.join('mo', lang)
136
                # ~ if not os.path.isdir(modir):
137
                    # ~ os.mkdir(modir)
138
                # ~ mofile = os.path.join(modir, 'basico.mo')
139
                # ~ subprocess.call('msgfmt {} -o {}'.format(os.path.join('po', pofile), mofile), shell=True)
140
                # ~ data_files.append(['share/locale/{}/LC_MESSAGES/'.format(lang), [mofile]])
141
        return data_files
142
    except:
143
        return []
144
 
145
if os.name == 'posix':
146
    data_files = add_data()
147
else:
148
    data_files = []
149
 
150
# ~ try:
151
    # ~ bcommit = subprocess.check_output("svn info", shell=True)
152
    # ~ ucommit = bcommit.decode(encoding='UTF-8')
153
    # ~ icommit = int(ucommit.split('\n')[6].split(':')[1])
154
    # ~ dcommit = ucommit.split('\n')[11][19:29]
155
# ~ except Exception as error:
156
    # ~ print (error)
157
    # ~ dcommit = 'None'
158
    # ~ icommit = 0
159
 
160
 
161
def main():
162
    setup(
163
        name='basico',
342 t00mlabs 164
        version='0.4',
340 t00mlabs 165
        author='Tomás Vírseda',
166
        author_email='tomasvirseda@gmail.com',
167
        url='http://subversion.t00mlabs.net/basico',
168
        description='SAP Notes Manager for SAP Consultants',
169
        long_description=long_description,
170
        download_url = 'http://t00mlabs.net/downloads/basico-0.3.tar.gz',
171
        license='GPLv3',
172
        packages=['basico', 'basico.core', 'basico.services', 'basico.widgets'],
173
        # distutils does not support install_requires, but pip needs it to be
174
        # able to automatically install dependencies
175
        install_requires=[
176
              'python-dateutil',
177
              'selenium',
178
              'feedparser',
179
              'requests',
180
              'openpyxl',
181
        ],
182
        include_package_data=True,
183
        data_files=data_files,
184
        zip_safe=False,
185
        platforms='any',
186
        classifiers=[
187
            'Development Status :: 3 - Alpha',
188
            'Environment :: X11 Applications :: Gnome',
189
            'Environment :: X11 Applications :: GTK',
190
            'Intended Audience :: Information Technology',
191
            'Intended Audience :: Other Audience',
192
            'Intended Audience :: System Administrators',
193
            'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)',
194
            'Natural Language :: English',
195
            'Operating System :: Microsoft :: Windows',
196
            'Operating System :: POSIX :: Linux',
197
            'Programming Language :: Python :: 3',
198
            'Topic :: Database :: Front-Ends',
199
            'Topic :: System :: Systems Administration',
200
            'Topic :: Utilities'
201
        ],
202
        entry_points={
203
            'gui_scripts': [
204
                'basico = basico.basico:main',
205
                ]
206
            },
207
    )
208
 
209
 
210
if __name__ == '__main__':
211
    main()