install: auto-install python3-gi and other missing apt deps
Check for python3-gi (PyGObject), xdotool, libnotify-bin, and pipewire-bin before creating the venv; if any are missing, run sudo apt-get install automatically so the install works out of the box on a fresh system. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
0ce4f8e7ac
commit
15f8c1d9f7
@ -14,15 +14,17 @@ BIN="$HOME/.local/bin/blitztext"
|
|||||||
|
|
||||||
echo "==> Checking host tools"
|
echo "==> Checking host tools"
|
||||||
need_pkg=()
|
need_pkg=()
|
||||||
|
# python3-gi (PyGObject) must come from apt — it can't be pip-installed.
|
||||||
|
python3 -c "import gi" 2>/dev/null || need_pkg+=("python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-appindicator3-0.1")
|
||||||
command -v xdotool >/dev/null || need_pkg+=("xdotool")
|
command -v xdotool >/dev/null || need_pkg+=("xdotool")
|
||||||
command -v notify-send >/dev/null || need_pkg+=("libnotify-bin")
|
command -v notify-send >/dev/null || need_pkg+=("libnotify-bin")
|
||||||
if ! command -v pw-record >/dev/null && ! command -v arecord >/dev/null && ! command -v parecord >/dev/null; then
|
if ! command -v pw-record >/dev/null && ! command -v arecord >/dev/null && ! command -v parecord >/dev/null; then
|
||||||
need_pkg+=("pipewire-bin (or alsa-utils)")
|
need_pkg+=("pipewire-bin")
|
||||||
fi
|
fi
|
||||||
if (( ${#need_pkg[@]} )); then
|
if (( ${#need_pkg[@]} )); then
|
||||||
echo " Missing host tools: ${need_pkg[*]}"
|
echo " Missing system packages — installing now (requires sudo):"
|
||||||
echo " On Ubuntu/Debian: sudo apt install xdotool libnotify-bin pipewire-bin"
|
echo " sudo apt install ${need_pkg[*]}"
|
||||||
echo " (continuing — install them before running the app)"
|
sudo apt-get install -y "${need_pkg[@]}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "==> Creating venv at $VENV"
|
echo "==> Creating venv at $VENV"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user