File: mnemosyne.spec

package info (click to toggle)
mnemosyne 2.6.1+ds-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 8,268 kB
  • sloc: python: 32,145; ansic: 837; xml: 625; makefile: 249
file content (264 lines) | stat: -rw-r--r-- 13,870 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
# -*- mode: python -*-

import os, sys, shutil

block_cipher = None

datas = [("mo", "mo")]
excludes = []
binaries = []

hiddenimports = [
             'mnemosyne.version',
             'mnemosyne.libmnemosyne.card',
             'mnemosyne.libmnemosyne.card_type',
             'mnemosyne.libmnemosyne.card_type_converter',
             'mnemosyne.libmnemosyne.component',
             'mnemosyne.libmnemosyne.component_manager',
             'mnemosyne.libmnemosyne.configuration',
             'mnemosyne.libmnemosyne.controller',
             'mnemosyne.libmnemosyne.criterion',
             'mnemosyne.libmnemosyne.database',
             'mnemosyne.libmnemosyne.fact',
             'mnemosyne.libmnemosyne.fact_view',
             'mnemosyne.libmnemosyne.file_format',
             'mnemosyne.libmnemosyne.filter',
             'mnemosyne.libmnemosyne.hook',
             'mnemosyne.libmnemosyne.logger',
             'mnemosyne.libmnemosyne.log_uploader',
             'mnemosyne.libmnemosyne.plugin',
             'mnemosyne.libmnemosyne.renderer',
             'mnemosyne.libmnemosyne.render_chain',
             'mnemosyne.libmnemosyne.review_controller',
             'mnemosyne.libmnemosyne.scheduler',
             'mnemosyne.libmnemosyne.statistics_page',
             'mnemosyne.libmnemosyne.stopwatch',
             'mnemosyne.libmnemosyne.study_mode',
             'mnemosyne.libmnemosyne.sync_server',
             'mnemosyne.libmnemosyne.tag',
             'mnemosyne.libmnemosyne.tag_tree',
             'mnemosyne.libmnemosyne.translator',
             'mnemosyne.libmnemosyne.ui_component',
             'mnemosyne.libmnemosyne.utils',
             'mnemosyne.libmnemosyne.card_types.both_ways',
             'mnemosyne.libmnemosyne.card_types.cloze',
             'mnemosyne.libmnemosyne.card_types.front_to_back',
             'mnemosyne.libmnemosyne.card_types.map',
             'mnemosyne.libmnemosyne.card_types.M_sided',
             'mnemosyne.libmnemosyne.card_types.sentence',
             'mnemosyne.libmnemosyne.card_types.vocabulary',
             'mnemosyne.libmnemosyne.controllers.default_controller',
             'mnemosyne.libmnemosyne.criteria.default_criterion',
             'mnemosyne.libmnemosyne.databases.SQLite',
             'mnemosyne.libmnemosyne.databases.SQLite_criterion_applier',
             'mnemosyne.libmnemosyne.databases.SQLite_logging',
             'mnemosyne.libmnemosyne.databases.SQLite_media',
             'mnemosyne.libmnemosyne.databases.SQLite_no_pregenerated_data',
             'mnemosyne.libmnemosyne.databases.SQLite_statistics',
             'mnemosyne.libmnemosyne.databases.SQLite_sync',
             'mnemosyne.libmnemosyne.databases._apsw',
             'mnemosyne.libmnemosyne.databases._sqlite3',
             'mnemosyne.libmnemosyne.file_formats.anki2',
             'mnemosyne.libmnemosyne.file_formats.cuecard_wcu',
             'mnemosyne.libmnemosyne.file_formats.media_preprocessor',
             'mnemosyne.libmnemosyne.file_formats.mnemosyne1',
             'mnemosyne.libmnemosyne.file_formats.mnemosyne1_mem',
             'mnemosyne.libmnemosyne.file_formats.mnemosyne1_xml',
             'mnemosyne.libmnemosyne.file_formats.mnemosyne2_cards',
             'mnemosyne.libmnemosyne.file_formats.mnemosyne2_db',
             'mnemosyne.libmnemosyne.file_formats.science_log_parser',
             'mnemosyne.libmnemosyne.file_formats.smconv_XML',
             'mnemosyne.libmnemosyne.file_formats.supermemo_7_txt',
             'mnemosyne.libmnemosyne.file_formats.tsv',
             'mnemosyne.libmnemosyne.filters.escape_to_html',
             'mnemosyne.libmnemosyne.filters.escape_to_html_for_card_browser',
             'mnemosyne.libmnemosyne.filters.expand_paths',
             'mnemosyne.libmnemosyne.filters.html5_audio',
             'mnemosyne.libmnemosyne.filters.html5_video',
             'mnemosyne.libmnemosyne.filters.latex',
             'mnemosyne.libmnemosyne.filters.non_latin_font_size_increase',
             'mnemosyne.libmnemosyne.filters.RTL_handler',
             'mnemosyne.libmnemosyne.loggers.database_logger',
             'mnemosyne.libmnemosyne.renderers.html_css',
             'mnemosyne.libmnemosyne.renderers.html_css_card_browser',
             'mnemosyne.libmnemosyne.renderers.plain_text',
             'mnemosyne.libmnemosyne.renderers.anki_renderer',
             'mnemosyne.libmnemosyne.renderers.anki.decorator',
             'mnemosyne.libmnemosyne.renderers.anki.hooks',
             'mnemosyne.libmnemosyne.renderers.anki.lang',
             'mnemosyne.libmnemosyne.renderers.anki.utils',
             'mnemosyne.libmnemosyne.renderers.anki.template',
             'mnemosyne.libmnemosyne.renderers.anki.template.furigana',
             'mnemosyne.libmnemosyne.renderers.anki.template.hint',
             'mnemosyne.libmnemosyne.renderers.anki.template.template',
             'mnemosyne.libmnemosyne.renderers.anki.template.view',
             'mnemosyne.libmnemosyne.render_chains.card_browser_render_chain',
             'mnemosyne.libmnemosyne.render_chains.default_render_chain',
             'mnemosyne.libmnemosyne.render_chains.plain_text_chain',
             'mnemosyne.libmnemosyne.render_chains.sync_to_card_only_client',
             'mnemosyne.libmnemosyne.review_controllers.SM2_controller',
             'mnemosyne.libmnemosyne.review_controllers.SM2_controller_cramming',
             'mnemosyne.libmnemosyne.schedulers.cramming',
             'mnemosyne.libmnemosyne.schedulers.SM2_mnemosyne',
             'mnemosyne.libmnemosyne.statistics_pages.cards_added',
             'mnemosyne.libmnemosyne.statistics_pages.cards_learned',
             'mnemosyne.libmnemosyne.statistics_pages.current_card',
             'mnemosyne.libmnemosyne.statistics_pages.easiness',
             'mnemosyne.libmnemosyne.statistics_pages.grades',
             'mnemosyne.libmnemosyne.statistics_pages.retention_score',
             'mnemosyne.libmnemosyne.statistics_pages.schedule',
             'mnemosyne.libmnemosyne.study_modes.cram_all',
             'mnemosyne.libmnemosyne.study_modes.cram_recent',
             'mnemosyne.libmnemosyne.study_modes.new_only',
             'mnemosyne.libmnemosyne.study_modes.scheduled_forgotten_new',
             'mnemosyne.libmnemosyne.translators.gettext_translator',
             'mnemosyne.libmnemosyne.translators.no_translator',
             'mnemosyne.libmnemosyne.ui_components.card_type_widget',
             'mnemosyne.libmnemosyne.ui_components.configuration_widget',
             'mnemosyne.libmnemosyne.ui_components.criterion_widget',
             'mnemosyne.libmnemosyne.ui_components.dialogs',
             'mnemosyne.libmnemosyne.ui_components.main_widget',
             'mnemosyne.libmnemosyne.ui_components.review_widget',
             'mnemosyne.libmnemosyne.ui_components.statistics_widget',
             'mnemosyne.libmnemosyne.upgrades.upgrade1',
             'mnemosyne.libmnemosyne.upgrades.upgrade2',
             'mnemosyne.pyqt_ui.about_dlg',
             'mnemosyne.pyqt_ui.activate_cards_dlg',
             'mnemosyne.pyqt_ui.add_cards_dlg',
             'mnemosyne.pyqt_ui.add_tags_dlg',
             'mnemosyne.pyqt_ui.browse_cards_dlg',
             'mnemosyne.pyqt_ui.card_set_name_dlg',
             'mnemosyne.pyqt_ui.card_type_tree_wdgt',
             'mnemosyne.pyqt_ui.card_type_wdgt_generic',
             'mnemosyne.pyqt_ui.change_card_type_dlg',
             'mnemosyne.pyqt_ui.clone_card_type_dlg',
             'mnemosyne.pyqt_ui.completion_combo_box',
             'mnemosyne.pyqt_ui.compact_database_dlg',
             'mnemosyne.pyqt_ui.configuration',
             'mnemosyne.pyqt_ui.configuration_dlg',
             'mnemosyne.pyqt_ui.configuration_wdgt_card_appearance',
             'mnemosyne.pyqt_ui.configuration_wdgt_study',
             'mnemosyne.pyqt_ui.configuration_wdgt_main',
             'mnemosyne.pyqt_ui.configuration_wdgt_servers',
             'mnemosyne.pyqt_ui.convert_card_type_keys_dlg',
             'mnemosyne.pyqt_ui.criterion_wdgt_default',
             'mnemosyne.pyqt_ui.delete_unused_media_files_dlg',
             'mnemosyne.pyqt_ui.edit_card_dlg',
             'mnemosyne.pyqt_ui.edit_M_sided_card_type_dlg',
             'mnemosyne.pyqt_ui.edit_M_sided_card_template_wdgt',
             'mnemosyne.pyqt_ui.export_dlg',
             'mnemosyne.pyqt_ui.export_metadata_dlg',
             'mnemosyne.pyqt_ui.getting_started_dlg',
             'mnemosyne.pyqt_ui.import_dlg',
             'mnemosyne.pyqt_ui.main_wdgt',
             'mnemosyne.pyqt_ui.manage_card_types_dlg',
             'mnemosyne.pyqt_ui.manage_plugins_dlg',
             'mnemosyne.pyqt_ui.mnemosyne_rc',
             'mnemosyne.pyqt_ui.mplayer_audio',
             'mnemosyne.pyqt_ui.mplayer_video',
             'mnemosyne.pyqt_ui.prefill_tag_behaviour_plugin',
             'mnemosyne.pyqt_ui.preview_cards_dlg',
             'mnemosyne.pyqt_ui.pyqt_render_chain',
             'mnemosyne.pyqt_ui.qpushbutton2',
             'mnemosyne.pyqt_ui.qtextedit2',
             'mnemosyne.pyqt_ui.qt_sync_server',
             'mnemosyne.pyqt_ui.qt_translator',
             'mnemosyne.pyqt_ui.qt_web_server',
             'mnemosyne.pyqt_ui.qt_worker_thread',
             'mnemosyne.pyqt_ui.qwebengineview2',
             'mnemosyne.pyqt_ui.remove_tags_dlg',
             'mnemosyne.pyqt_ui.review_wdgt',
             'mnemosyne.pyqt_ui.review_wdgt_cramming',
             'mnemosyne.pyqt_ui.statistics_dlg',
             'mnemosyne.pyqt_ui.statistics_wdgts_plotting',
             'mnemosyne.pyqt_ui.statistics_wdgt_html',
             'mnemosyne.pyqt_ui.sync_dlg',
             'mnemosyne.pyqt_ui.tag_tree_wdgt',
             'mnemosyne.pyqt_ui.tip_after_starting_n_times',
             'mnemosyne.pyqt_ui.tip_dlg',
             'mnemosyne.pyqt_ui.ui_main_wdgt',
             'mnemosyne.web_server.jquery_mb_html5_audio',
             'mnemosyne.web_server.review_wdgt',
             'mnemosyne.web_server.simple_html5_audio',
             'mnemosyne.web_server.web_server',
             'mnemosyne.web_server.web_server_renderer',
             'mnemosyne.web_server.web_server_render_chain'
]

if sys.platform == "win32":
             datas.append(("C:\\Program Files (x86)\\mplayer.exe", "."))
             excludes = ['IPython', 'lib2to3']

if sys.platform == "darwin":
             hiddenimports.append('PyQt5.QtWebEngineCore')
             hiddenimports.append('PyQt5.QtWebEngineWidgets')
             binaries.append(('/usr/local/bin/mplayer', '.'))

datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'hooks.py'), 'anki'))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'lang.py'), 'anki'))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'utils.py'), 'anki'))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'decorator.py'), 'anki'))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', '__init__.py'), 'anki'))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'template', 'furigana.py'),
             os.path.join('anki', 'template')))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'template', 'hint.py'),
             os.path.join('anki', 'template')))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'template', 'template.py'),
             os.path.join('anki', 'template')))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'template', 'view.py'),
             os.path.join('anki', 'template')))
datas.append((os.path.join('mnemosyne', 'libmnemosyne', 'renderers', 'anki', 'template', '__init__.py'),
             os.path.join('anki', 'template')))

a = Analysis([os.path.join('mnemosyne', 'pyqt_ui', 'mnemosyne')],
             pathex=[os.getcwd()],
             binaries=binaries,
             datas=datas,
             hiddenimports=hiddenimports,
             hookspath=[],
             runtime_hooks=[],
             excludes=excludes,
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher)

# http://stackoverflow.com/questions/4890159/python-excluding-modules-pyinstaller
a.binaries = a.binaries - TOC([
             ('tcl86t.dll', None, None),
             ('tk86t.dll', None, None),
             ('tcl86t.lib', None, None),
             ('tk86t.lib', None, None),
             ('tcl86tg.lib', None, None),
             ('tk86tg.lib', None, None),
             ('tclstub86.lib', None, None),
             ('tkstub86.lib', None, None)])

# Remove Tcl and Tk stuff (seems to cause troubles on some systems.)
# a.datas = [x for x in a.datas if not x[0].startswith("tcl")]
# a.datas = [x for x in a.datas if not x[0].startswith("tk")]

pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)

exe = EXE(pyz,
          a.scripts,
          exclude_binaries=True,
          name='Mnemosyne',
          debug=False,
          strip=False,
          upx=True,
          console=False,
          icon=os.path.join('pixmaps', 'mnemosyne.ico'))

coll = COLLECT(exe,
               a.binaries,
               a.zipfiles,
               a.datas,
               strip=False,
               upx=True,
               name='Mnemosyne')

if sys.platform == "darwin":
  app = BUNDLE(coll,
               name='Mnemosyne.app',
               icon=os.path.join('pixmaps', 'mnemosyne.icns'),
               bundle_identifier='org.qt-project.Qt.QtWebEngineCore')