41 lines
1.2 KiB
Bash
Executable File
41 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Setup für Debian/Ubuntu/Mint (inkl. Raspberry Pi OS). Muss als root laufen.
|
|
set -euo pipefail
|
|
|
|
if [[ $EUID -ne 0 ]]; then
|
|
echo "Bitte mit sudo aufrufen." >&2
|
|
exit 1
|
|
fi
|
|
|
|
apt-get update
|
|
apt-get install -y \
|
|
android-tools-adb \
|
|
android-tools-fastboot \
|
|
libusb-1.0-0 \
|
|
libusb-1.0-0-dev \
|
|
python3 \
|
|
python3-pip \
|
|
python3-venv \
|
|
usbutils
|
|
|
|
# udev-Regel installieren, damit der normale User ohne sudo auf die
|
|
# Hersteller-spezifischen USB-Modi zugreifen kann (Kirin DLOAD, fastboot etc.)
|
|
install -m 0644 udev/51-android-unlock.rules /etc/udev/rules.d/
|
|
udevadm control --reload-rules
|
|
udevadm trigger
|
|
|
|
# Den aufrufenden User in die plugdev-Gruppe stecken
|
|
TARGET_USER="${SUDO_USER:-$USER}"
|
|
if [[ -n "$TARGET_USER" && "$TARGET_USER" != "root" ]]; then
|
|
usermod -aG plugdev "$TARGET_USER"
|
|
fi
|
|
|
|
# Python-Deps in eine venv im Projektverzeichnis
|
|
PROJECT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
|
sudo -u "$TARGET_USER" python3 -m venv "$PROJECT_DIR/.venv"
|
|
sudo -u "$TARGET_USER" "$PROJECT_DIR/.venv/bin/pip" install -r "$PROJECT_DIR/requirements.txt"
|
|
|
|
echo
|
|
echo "Setup fertig. Einmal ab- und neu anmelden, damit plugdev greift."
|
|
echo "Dann: source .venv/bin/activate && python -m aubox detect"
|