Files

35 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
cd "$DIR"
TARGET="${1:-help}"
case "$TARGET" in
tui)
echo "==> Сборка автономного консольного TUI (Linux / BSD)..."
cargo build --release -p rust_lib_diagd --no-default-features --features tui --bin diagd
echo "✓ Успешно собрано: $DIR/target/release/diagd"
;;
gui)
echo "==> Сборка графического GUI (Flutter Desktop Linux)..."
flutter build linux --release
echo "✓ Успешно собрано: $DIR/build/linux/x64/release/bundle/diagd"
;;
all)
echo "==> Сборка TUI и GUI..."
cargo build --release -p rust_lib_diagd --no-default-features --features tui --bin diagd
flutter build linux --release
echo "✓ Все интерфейсы собраны!"
;;
*)
echo "Использование: $0 {tui|gui|all}"
echo ""
echo " tui - собрать консольный TUI (на базе Ratatui, работает на Linux и BSD)"
echo " gui - собрать графический интерфейс (на базе Flutter Desktop для Linux)"
echo " all - собрать оба варианта"
exit 1
;;
esac