35 lines
1.2 KiB
Bash
Executable File
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
|