Ao buscar na internet não achei um script para instalar e atualizar o Cursor, esse editor que usa Inteligência Artificial com agentes de IA para auxiliar e agilizar o desenvolvimento.
Script para instalar
#!/bin/bash
# Script: cursor-install.sh
# Descrição: Este script automatiza a instalação do editor Cursor no Linux.
# O script baixa a versão mais recente do Cursor, instala como AppImage em /opt
# e cria um atalho no menu de aplicativos do sistema.
#
# Funcionalidades:
# - Verifica e solicita privilégios sudo
# - Baixa a última versão do Cursor
# - Instala o AppImage em /opt
# - Cria atalho no menu de aplicativos
# - Gerencia erros de download e instalação
if [ "$EUID" -ne 0 ]; then
echo "Solicitando acesso sudo para instalar o Cursor..."
exec sudo "$0" "$@"
exit $?
fi
if [ -f "/opt/cursor.appimage" ]; then
echo "Cursor já está instalado em /opt/cursor.appimage"
echo "Para atualizar, use o script cursor-update.sh"
exit 1
fi
TEMP_DIR=$(mktemp -d)
cd "$TEMP_DIR"
echo "Verificando a versão mais recente do Cursor..."
if ! DOWNLOAD_INFO=$(curl -s -H "sec-ch-ua: \"Google Chrome\";v=\"135\", \"Not-A.Brand\";v=\"8\", \"Chromium\";v=\"135\"" \
-H "sec-ch-ua-mobile: ?0" \
-H "sec-ch-ua-platform: \"Linux\"" \
"https://www.cursor.com/api/download?platform=linux-x64&releaseTrack=stable"); then
echo "Erro: Falha ao obter informações de download"
exit 1
fi
DOWNLOAD_URL=$(echo "$DOWNLOAD_INFO" | grep -o '"downloadUrl":"[^"]*"' | cut -d'"' -f4)
VERSION=$(echo "$DOWNLOAD_INFO" | grep -o '"version":"[^"]*"' | cut -d'"' -f4)
if [ -z "$DOWNLOAD_URL" ] || [ -z "$VERSION" ]; then
echo "Erro: Falha ao analisar informações de download"
exit 1
fi
echo "Baixando Cursor versão ${VERSION}..."
if ! curl -L -o cursor.AppImage "$DOWNLOAD_URL"; then
echo "Erro: Falha ao baixar o Cursor AppImage"
exit 1
fi
chmod +x cursor.AppImage
echo "Instalando Cursor..."
mv cursor.AppImage /opt/cursor.appimage
# Criar atalho no desktop
cat > /usr/share/applications/cursor.desktop << EOL
[Desktop Entry]
Name=Cursor
Exec=/opt/cursor.appimage
Icon=cursor
Type=Application
Categories=Development;IDE;
Comment=AI-first code editor
EOL
echo "Instalação concluída! Cursor ${VERSION} foi instalado em /opt/cursor.appimage"
echo "Um atalho foi criado no menu de aplicativos"
echo "Você pode executar o Cursor através do menu de aplicativos ou executando: /opt/cursor.appimage"
# Limpeza
cd /
rm -rf "$TEMP_DIR"
Script para atualizar o cursor:
#!/bin/bash
# Script: cursor-update.sh
# Descrição: Este script atualiza uma instalação existente do editor Cursor no Linux.
# O script baixa a versão mais recente do Cursor, faz backup da versão anterior
# e atualiza a instalação em /opt.
#
# Funcionalidades:
# - Verifica e solicita privilégios sudo
# - Verifica se o Cursor está instalado
# - Baixa a última versão do Cursor
# - Faz backup da versão anterior
# - Atualiza a instalação mantendo o mesmo local
if [ "$EUID" -ne 0 ]; then
echo "Solicitando acesso sudo para atualizar o Cursor..."
exec sudo "$0" "$@"
exit $?
fi
if [ ! -f "/opt/cursor.appimage" ]; then
echo "Erro: Cursor não está instalado em /opt/cursor.appimage"
echo "Por favor, use o script de instalação primeiro"
exit 1
fi
TEMP_DIR=$(mktemp -d)
cd "$TEMP_DIR"
echo "Verificando a versão mais recente do Cursor..."
if ! DOWNLOAD_INFO=$(curl -s -H "sec-ch-ua: \"Google Chrome\";v=\"135\", \"Not-A.Brand\";v=\"8\", \"Chromium\";v=\"135\"" \
-H "sec-ch-ua-mobile: ?0" \
-H "sec-ch-ua-platform: \"Linux\"" \
"https://www.cursor.com/api/download?platform=linux-x64&releaseTrack=stable"); then
echo "Erro: Falha ao obter informações de download"
exit 1
fi
DOWNLOAD_URL=$(echo "$DOWNLOAD_INFO" | grep -o '"downloadUrl":"[^"]*"' | cut -d'"' -f4)
VERSION=$(echo "$DOWNLOAD_INFO" | grep -o '"version":"[^"]*"' | cut -d'"' -f4)
if [ -z "$DOWNLOAD_URL" ] || [ -z "$VERSION" ]; then
echo "Erro: Falha ao analisar informações de download"
exit 1
fi
echo "Baixando Cursor versão ${VERSION}..."
if ! curl -L -o cursor.AppImage "$DOWNLOAD_URL"; then
echo "Erro: Falha ao baixar o Cursor AppImage"
exit 1
fi
chmod +x cursor.AppImage
echo "Atualizando Cursor..."
mv /opt/cursor.appimage /opt/cursor.appimage.bak
mv cursor.AppImage /opt/cursor.appimage
echo "Atualização concluída! A versão anterior foi copiada para /opt/cursor.appimage.bak"
echo "Você já pode executar a versão atualizada do Cursor (versão ${VERSION})"
# Limpeza
cd /
rm -rf "$TEMP_DIR"
Eu uso Linux então desenvolvi esses scripts para esse Sistema Operacional (SO) mas se você precisar para algum SO diferente é só falar.
Veja mas scripts úteis para o dia a dia no meu github (albertosouza): https://github.com/albertosouza/scripts