27 lines
957 B
Bash
27 lines
957 B
Bash
#!/bin/bash
|
||
# Сборка одного исполняемого файла для Linux (PyInstaller)
|
||
# Запуск: chmod +x build.sh && ./build.sh
|
||
|
||
set -e
|
||
cd "$(dirname "$0")"
|
||
|
||
if [ ! -f ".venv/bin/activate" ]; then
|
||
echo "Создайте venv и установите зависимости:"
|
||
echo " python3 -m venv .venv && . .venv/bin/activate && pip install -r requirements.txt"
|
||
exit 1
|
||
fi
|
||
. .venv/bin/activate
|
||
pip install pyinstaller -q
|
||
|
||
# Иконка: если нет icon.ico — создаём заглушку
|
||
[ ! -f "icon.ico" ] && python make_icon.py || true
|
||
|
||
ICON_OPT=""
|
||
[ -f "icon.ico" ] && ICON_OPT="--icon icon.ico"
|
||
|
||
pyinstaller --onefile --noconsole --name PLStatus --clean $ICON_OPT status_automation.py
|
||
|
||
echo ""
|
||
echo "Готово: dist/PLStatus (без консоли, с иконкой если был icon.ico)"
|
||
echo "Рядом с бинарником положите config.json и папку images/ (см. README)"
|