You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Eclipse Updater - Atualizador Automático
Atualizador automático para o EclipseMenu (aplicação Electron) que baixa e instala atualizações diretamente na pasta `resources/app` sem criar backups ou downloads temporários.
## 🚀 Características
- ✅ **Atualização Direta**: Atualiza apenas os arquivos necessários sem backup
- ✅ **Interface Gráfica (GUI)**: Interface Tkinter amigável com barra de progresso
- ✅ **Busca Automática**: Encontra automaticamente o diretório do EclipseMenu
- ✅ **Instalação de Dependências**: Executa `npm install` automaticamente após atualização
- ✅ **Sem Pastas Temporárias**: Não cria pastas de backup ou download
- ✅ **Logging Completo**: Registra todas as operações em arquivo de log
- ✅ **Tratamento de Erros**: Gerencia erros de forma elegante
- ✅ **Download do GitHub**: Baixa atualizações diretamente do repositório Team-Nortlin/EclipseRelease
## 📋 Requisitos
- Python 3.7 ou superior
- Node.js com npm (para instalação de dependências)
- Windows (o atualizador foi projetado para Windows)
- Conexão com internet
- Permissões de escrita no diretório do EclipseMenu
## 🛠️ Instalação e Uso
### Executar o atualizador
```bash
# Executar diretamente (Python)
python eclipse.py
# Ou executar o arquivo compilado
EclipseUpdater.exe
```
### Compilar para .exe
```bash
# Executar o script de compilação
python build_updater.py
```
Isso criará o arquivo `EclipseUpdater.exe` na mesma pasta.
## 📁 Estrutura esperada
O atualizador procura automaticamente o EclipseMenu nestas localizações:
```
Eclipse-win32-x64/
├── Eclipse.exe
├── resources/
│ └── app/
│ ├── package.json
│ ├── app-ui/
│ ├── electron/
│ └── node_modules/
└── EclipseUpdater.exe (será criado aqui)
```
## 🔧 Como Funciona
1. **Busca Automática**: Encontra o diretório `resources/app` do Electron
2. **Download**: Baixa o ZIP da última release do GitHub
3. **Extração**: Extrai diretamente no diretório `resources/app`
4. **Instalação**: Executa `npm install` para instalar dependências
5. **Limpeza**: Remove arquivos temporários do sistema
## 📝 Arquivo de Log
Todas as operações são registradas no arquivo `eclipse_updater.log` para facilitar a depuração em caso de problemas.
## 🔐 Repositórios Privados
Se o repositório for privado, o instalador oferecerá várias opções:
### Opção 1: Token de Acesso Pessoal (PAT)
1. Crie um token em https://github.com/settings/tokens
2. Selecione a permissão `repo` (acesso total a repositórios privados)
3. Cole o token quando solicitado
### Opção 2: Download Manual
- O instalador abrirá o navegador na página de releases
- Faça o download manualmente e forneça o link
### Opção 3: Link Direto
- Se você tiver um link direto para o arquivo, pode fornecê-lo
## ⚠️ Notas Importantes
- O script sempre baixa a **versão mais recente** disponível no repositório
- Arquivos anteriores no diretório `Eclipse/` são **substituídos** durante a atualização
- Certifique-se de ter **espaço em disco** suficiente para o download e extração
- O script requer **conexão com internet** para funcionar
- Para repositórios privados, você precisará de **autenticação**
## 🚨 Solução de Problemas
### "Não foi possível encontrar o diretório do EclipseMenu!"
- Certifique-se de que o EclipseMenu está instalado corretamente
- Verifique se há um arquivo `package.json` em `resources/app`
- O atualizador deve estar na mesma pasta que o `Eclipse-win32-x64`
### "npm não encontrado"
- Instale o Node.js: https://nodejs.org/
- Certifique-se de que o npm está no PATH do sistema
### Erro de permissão
- Execute o atualizador como administrador
- Verifique as permissões da pasta do EclipseMenu
### "Não foi possível obter informações da versão mais recente"
- Verifique sua conexão com internet
- O repositório pode estar indisponível
### "Erro ao fazer download"
- Verifique se há espaço em disco suficiente
- Verifique suas permissões de escrita no diretório
## 🤝 Contribuindo
Sinta-se à vontade para abrir issues ou enviar pull requests com melhorias!
## 📦 Requisitos Python
Instale as dependências necessárias:
```bash
pip install -r requirements.txt
```
Para compilar para .exe:
```bash
pip install pyinstaller
```
Ou use o script de compilação automática:
```bash
python build_updater.py
```# ValeyRelease