infinipaint/linuxinstall/bundle-rembg.sh

28 lines
1 KiB
Bash
Raw Permalink Normal View History

#!/usr/bin/env bash
# Place rembg CLI + models next to an InfiniPaint install so Schnell/Allgemein
# work without a global PATH dependency. Missing tools are skipped; the UI greys out.
set -euo pipefail
DEST="${1:?usage: bundle-rembg.sh DEST_DIR}"
mkdir -p "$DEST"
TOWER="${TOWER_REMBG_VENV:-$HOME/.local/share/tower-rembg}"
MODELS_SRC="${REMBG_HOME:-$HOME/.rembg}"
if [[ -x "$TOWER/bin/rembg" ]]; then
ln -sfn "$TOWER" "$DEST/rembg"
echo "Linked rembg CLI: $DEST/rembg -> $TOWER"
elif [[ -x "$TOWER/Scripts/rembg.exe" ]]; then
ln -sfn "$TOWER" "$DEST/rembg"
echo "Linked rembg CLI: $DEST/rembg -> $TOWER"
else
echo "No tower-rembg venv at $TOWER — Schnell/Allgemein will be unavailable unless rembg is on PATH."
fi
if [[ -d "$MODELS_SRC/models" ]]; then
mkdir -p "$DEST/rembg-home"
ln -sfn "$MODELS_SRC/models" "$DEST/rembg-home/models"
echo "Linked rembg models: $DEST/rembg-home/models -> $MODELS_SRC/models"
else
echo "No rembg models at $MODELS_SRC/models — download with: rembg d silueta && rembg d bria-rmbg"
fi