Skip to content

Instantly share code, notes, and snippets.

@ebertti
Last active May 29, 2026 19:09
Show Gist options
  • Select an option

  • Save ebertti/9322a7373e49c88de4a2a1ded2ebc686 to your computer and use it in GitHub Desktop.

Select an option

Save ebertti/9322a7373e49c88de4a2a1ded2ebc686 to your computer and use it in GitHub Desktop.
Instalador do IRPF 2026 para macOS
#!/bin/bash
set -e
echo "=== Instalador do IRPF 2026 ==="
echo ""
IRPF_DIR="$HOME/irpf"
IRPF_ZIP="${IRPF_DIR}/IRPF2026-1.3.zip"
IRPF_URL="https://downloadirpf.receita.fazenda.gov.br/irpf/2026/irpf/arquivos/IRPF2026-1.3.zip"
mkdir -p "${IRPF_DIR}"
# Passo 1: Instalar Homebrew se não tiver
if ! command -v brew &>/dev/null; then
echo "[1/5] Instalando Homebrew..."
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
eval "$(/opt/homebrew/bin/brew shellenv)"
echo "Homebrew instalado."
else
echo "[1/5] Homebrew já instalado. Pulando..."
fi
# Passo 2: Instalar OpenJDK 17
if java -version 2>&1 | grep -q "17\."; then
echo "[2/5] Java 17 já instalado. Pulando..."
else
echo "[2/5] Instalando OpenJDK 17..."
brew install openjdk@17
sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
export PATH="/opt/homebrew/opt/openjdk@17/bin:$PATH"
echo "OpenJDK 17 instalado."
fi
# Passo 3: Baixar o IRPF 2026
if [ -f "${IRPF_DIR}/irpf.jar" ]; then
echo "[3/5] IRPF 2026 já instalado em ${IRPF_DIR}. Pulando download..."
else
IRPF_ZIP_TMP="/tmp/IRPF2026-1.3.zip"
echo "[3/5] Baixando IRPF 2026..."
curl -L --fail --progress-bar -o "${IRPF_ZIP_TMP}" "${IRPF_URL}" || { echo "Erro ao baixar o IRPF. Verifique sua conexão."; exit 1; }
if [ ! -f "${IRPF_ZIP_TMP}" ] || [ ! -s "${IRPF_ZIP_TMP}" ]; then
echo "Arquivo ZIP inválido ou vazio. Abortando."
exit 1
fi
echo "[4/5] Extraindo para ${IRPF_DIR}..."
unzip -q "${IRPF_ZIP_TMP}" -d "${IRPF_DIR}" || { echo "Erro ao extrair o ZIP."; exit 1; }
# Move conteúdo da subpasta para o diretório raiz (caso o ZIP tenha uma pasta interna)
SUBDIR=$(find "${IRPF_DIR}" -maxdepth 1 -mindepth 1 -type d | head -1)
if [ -n "${SUBDIR}" ] && [ -f "${SUBDIR}/irpf.jar" ]; then
mv "${SUBDIR}"/* "${IRPF_DIR}/"
rmdir "${SUBDIR}"
fi
rm "${IRPF_ZIP_TMP}"
echo "IRPF 2026 instalado em ${IRPF_DIR}."
fi
# Passo 4: Rodar o IRPF
echo "[5/5] Iniciando o IRPF 2026..."
echo ""
cd "${IRPF_DIR}"
/opt/homebrew/opt/openjdk@17/bin/java -jar irpf.jar
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment