docs: update documentation files and project README structure

This commit is contained in:
Claudecio Martins
2026-10-11 18:04:46 -03:00
parent 176acf6f40
commit d8d2e6ee46
12 changed files with 1040 additions and 425 deletions
+78 -22
View File
@@ -1,43 +1,99 @@
# Instalação e Empacotamento Nativo
O **CyberCore Signer** foi projetado para distribuição sem exigir que o usuário final tenha o Java ou JRE instalado em seu computador.
> **Guia de Distribuição com Runtime Embutido (`jpackage`), Instaladores MSI e Implantação Corporativa**
O **CyberCore Signer** foi projetado para distribuição nativa através da ferramenta `jpackage` (introduzida no JDK 14 e consolidada nas versões LTS 21/25). Isso significa que o usuário final **não precisa instalar o Java ou configurar variáveis de ambiente (JRE/JDK)** em sua máquina. O aplicativo carrega um runtime Java reduzido e isolado exclusivamente para sua execução.
---
## 1. Requisitos de Sistema
- **Sistema Operacional Homologado:** Windows 10 (64-bit) ou Windows 11 (64-bit).
- **Compatibilidade Adicional:** Linux x86_64 e macOS (arquitetura preparada).
- **Hardware:** Mínimo de 4 GB RAM, 150 MB de espaço em disco.
- **Porta de Rede Local:** A porta TCP `21325` deve estar livre em `127.0.0.1`.
* **Sistema Operacional Alvo:** Windows 10 (64-bit) ou Windows 11 (64-bit).
* **Compatibilidade Adicional:** Distribuições Linux modernas x86_64 (Ubuntu 20.04+, Debian 11+, Fedora 38+, RHEL 9+).
* **Memória RAM:** Mínimo de 4 GB (Recomendado: 8 GB).
* **Espaço em Disco:** 180 MB livres para os arquivos da aplicação e runtime embutido.
* **Rede Local:** A porta TCP `21325` deve estar livre no endereço de loopback `127.0.0.1`.
---
## 2. Geração do Instalador Windows (MSI / EXE) com `jpackage`
O empacotamento utiliza a ferramenta nativa `jpackage` incluída no JDK 21/25.
### 2.1 Pré-requisitos para a Máquina de Build
Para compilar e gerar o pacote de instalação no Windows:
1. **JDK 21+ LTS:** Com a variável `JAVA_HOME` devidamente configurada.
2. **WiX Toolset (v3.11+):** Necessário pelo `jpackage` para gerar instaladores `.msi`. Baixe em [wixtoolset.org](https://wixtoolset.org/) e adicione a pasta `bin` ao `PATH`.
### 2.2 Execução do Script de Empacotamento
Na raiz do projeto, execute o script em lote:
### No Windows:
Execute o script em lote localizado na raiz:
```cmd
scripts\package-windows.bat
```
### O que o script realiza:
1. Compila o projeto em modo release:
```cmd
mvnw clean package -DskipTests
```
2. Invoca o `jpackage` criando o instalador Windows:
- Extrai um runtime mínimo customizado contendo apenas os módulos necessários (`java.base`, `java.desktop`, `java.smartcardio`, `jdk.crypto.cryptoki`, etc.).
- Cria atalhos na Área de Trabalho e no Menu Iniciar.
- Gera um instalador padrão MSI ou EXE em `dist/`.
Ou execute manualmente os comandos do pipeline:
```cmd
:: 1. Compilação do projeto e geração do Fat JAR consolidado
mvnw clean package -DskipTests
:: 2. Geração do instalador nativo via jpackage
jpackage ^
--type msi ^
--name "CyberCore Signer" ^
--app-version 0.1.0 ^
--vendor "CyberCore Systems" ^
--input modules\cybercore-app\target ^
--main-jar cybercore-signer.jar ^
--main-class br.com.cybercore.signer.app.CyberCoreApp ^
--icon assets\cybercore.ico ^
--win-menu ^
--win-shortcut ^
--win-dir-chooser ^
--dest dist
```
O instalador `CyberCore Signer-0.1.0.msi` será gerado dentro da pasta `dist/`.
---
## 3. Instalação e Inicialização com o Sistema
## 3. Empacotamento para Linux (DEB / RPM / AppImage)
1. Execute o instalador `CyberCore-Signer-0.1.0.msi`.
2. Siga as instruções do assistente de instalação.
3. Ao concluir, o ícone do **CyberCore Signer** aparecerá na Área de Notificação (System Tray) ao lado do relógio do Windows.
4. O serviço local `http://127.0.0.1:21325` estará imediatamente disponível para atender as aplicações web autorizadas.
No ambiente Linux x86_64:
```bash
# Executar o script nativo:
./scripts/package-jpackage.sh
```
O script utiliza o `jpackage` com o parâmetro `--type deb` ou `--type app-image`, empacotando os binários nativos e dependências do JavaFX com suporte ao subsistema gráfico X11/Wayland.
---
## 4. Implantação Corporativa e Instalação Silenciosa
Para administradores de rede (AD / GPO / SCCM / Intune) que precisam instalar o agente em centenas de estações de trabalho de forma automatizada:
### Instalação Silenciosa via Linha de Comando (MSI):
```cmd
msiexec /i "CyberCore Signer-0.1.0.msi" /qn /norestart
```
### Instalação com Registro de Log de Auditoria:
```cmd
msiexec /i "CyberCore Signer-0.1.0.msi" /qn /l*v "C:\Temp\cybercore_install.log"
```
### Desinstalação Silenciosa:
```cmd
msiexec /x "CyberCore Signer-0.1.0.msi" /qn /norestart
```
---
## 5. Inicialização com o Sistema e Área de Notificação (System Tray)
1. **Atalhos Criados:** O instalador cria automaticamente atalhos no Menu Iniciar e na Área de Trabalho.
2. **Inicialização Automática:** Durante a instalação, pode ser adicionada uma entrada no registro do Windows:
`HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run`
Chave: `CyberCoreSigner` -> Caminho: `"C:\Program Files\CyberCore Systems\CyberCore Signer\CyberCore Signer.exe" --minimized`
3. **Área de Notificação:** Quando iniciado, o agente minimiza para a bandeja do sistema (System Tray) ao lado do relógio do Windows, garantindo que o servidor local `127.0.0.1:21325` esteja sempre pronto para atender as solicitações das aplicações web homologadas.