#!/usr/bin/env sh set -eu APP_REPO="https://github.com/kaue34381210-star/hrx-code.git" APP_DIR="$HOME/.local/share/hrx-code" BIN_DIR="$HOME/.local/bin" PYTHON="${PYTHON:-python3}" LAUNCHER="$BIN_DIR/hrx" HRX_BIN="$APP_DIR/.venv/bin/hrx" say() { printf '%s ' "$1" } need() { command -v "$1" >/dev/null 2>&1 || { say "ERRO: '$1' não encontrado no sistema." exit 1 } } need git need "$PYTHON" mkdir -p "$BIN_DIR" if [ -d "$APP_DIR/.git" ]; then say "Atualizando HRX Code em $APP_DIR..." git -C "$APP_DIR" pull --ff-only else say "Baixando HRX Code em $APP_DIR..." git clone "$APP_REPO" "$APP_DIR" fi if [ ! -d "$APP_DIR/.venv" ]; then say "Criando ambiente virtual..." "$PYTHON" -m venv "$APP_DIR/.venv" fi say "Instalando/atualizando o pacote HRX Code..." "$APP_DIR/.venv/bin/python" -m pip install --upgrade pip >/dev/null "$APP_DIR/.venv/bin/python" -m pip install --upgrade "$APP_DIR" >/dev/null if [ ! -x "$HRX_BIN" ]; then say "ERRO: o pacote foi instalado, mas o comando hrx não foi criado." exit 1 fi cat > "$LAUNCHER" <