28 lines
1 KiB
Bash
28 lines
1 KiB
Bash
|
|
#!/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
|