Files
dokogen149FZ/dokogen.spec
T
prog1764 da4946cb59 feat: ребрендинг под 187-ФЗ (КИИ)
- Все упоминания 152-ФЗ заменены на 187-ФЗ (заголовок окна, справка,
  импорт, переменные, docstring'и, spec)
- import_152fz -> import_187fz, direction '152fz' -> '187fz'
- autosave_152 -> autosave_187
- Опросный_лист_152_ФЗ.xlsx -> Опросный_лист_187_ФЗ.xlsx
- Промпт ИИ: 'юрист по защите персональных данных (152-ФЗ)' -> 187-ФЗ
2026-08-03 23:25:18 +04:00

64 lines
1.9 KiB
RPMSpec

# -*- mode: python ; coding: utf-8 -*-
"""DokoGen — spec для PyInstaller.
Сборка: py -m PyInstaller --clean --noconfirm dokogen.spec
Результат: dist/DokoGen.exe (один файл, запускается на любом Windows без Python).
"""
import sys
from PyInstaller.utils.hooks import collect_data_files, collect_submodules
# ---------- Данные приложения ----------
datas = [
# Справочники (defense_tools.json, pd_actions.json, pd_items.json, pd_categories.json)
('dokogen/dictionaries', 'dokogen/dictionaries'),
# Пустой опросник 187-ФЗ (для «Справка → Пустой опросник»)
('dokogen/data', 'dokogen/data'),
# Иконка приложения (для окна программы в exe)
('dokogen/icon.ico', 'dokogen'),
]
# ---------- Словари pymorphy3 (обязательно!) ----------
# Без них склонение организаций/ФИО в exe не будет работать.
datas += collect_data_files('pymorphy3_dicts_ru')
datas += collect_data_files('pymorphy3')
# ---------- Скрытые импорты ----------
hiddenimports = collect_submodules('pymorphy3') + collect_submodules('pymorphy3_dicts_ru')
hiddenimports += [
'lxml', 'lxml.etree', 'lxml._elementpath',
'openpyxl', 'openpyxl.cell._writer',
]
a = Analysis(
['main.py'],
pathex=[],
binaries=[],
datas=datas,
hiddenimports=hiddenimports,
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='DokoGen',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=False, # GUI-приложение, без консоли
disable_windowed_traceback=False,
icon='dokogen/icon.ico',
)