]> git.immae.eu Git - perso/Immae/Projets/Python/MusicSampler.git/blame_incremental - music_sampler.spec
Add config
[perso/Immae/Projets/Python/MusicSampler.git] / music_sampler.spec
... / ...
CommitLineData
1# -*- mode: python -*-
2import os
3import setuptools_scm
4from kivy.tools.packaging.pyinstaller_hooks import get_deps_minimal,\
5 hookspath, runtime_hooks
6
7import importlib.machinery
8sysfont = importlib.machinery\
9 .SourceFileLoader('sysfont', os.getcwd()+'/music_sampler/sysfont.py') \
10 .load_module()
11
12excluded_and_hidden_modules = get_deps_minimal(
13 video=None,
14 camera=None,
15 audio=None,
16 clipboard=None,
17 spelling=None)
18
19excluded_and_hidden_modules['hiddenimports'] += [
20 'six',
21 'packaging',
22 'packaging.version',
23 'packaging.specifiers',
24 'packaging.requirements' ]
25
26commit_message = setuptools_scm.get_version()
27pyinstaller_file = open(".pyinstaller_commit", "w")
28pyinstaller_file.write(commit_message)
29pyinstaller_file.close()
30
31data = [
32 ('music_sampler/music_sampler.kv', '.'),
33 ('.pyinstaller_commit', '.'),
34 ('music_sampler/locales', 'locales')
35]
36
37a = Analysis(['run.py'],
38 binaries=None,
39 datas=data,
40 hookspath=hookspath(),
41 runtime_hooks=runtime_hooks(),
42 **excluded_and_hidden_modules)
43
44fonts = [
45 ("Ubuntu", sysfont.STYLE_NORMAL),
46 ("Ubuntu", sysfont.STYLE_BOLD),
47 ("Symbola", sysfont.STYLE_NONE)
48]
49
50for fontname, style in fonts:
51 font = sysfont.get_font(fontname, style=style)
52 a.datas.append((
53 'fonts/{}_{}.ttf'.format(fontname, style),
54 font[4],
55 'DATA'
56 ))
57
58pyz = PYZ(a.pure, a.zipped_data)
59
60# Single file
61exe = EXE(pyz, a.scripts, a.binaries, a.zipfiles, a.datas,
62 name='music_sampler')
63
64# Directory
65# exe = EXE(pyz, a.scripts,
66# exclude_binaries=True,
67# name='music_sampler_dir',
68# debug=False,
69# strip=False,
70# upx=True,
71# console=True)
72# coll = COLLECT(exe, a.binaries, a.zipfiles, a.datas,
73# strip=False,
74# upx=True,
75# name='music_sampler_dir')