Sobre o projeto

VirtDeck é um cliente desktop não oficial para gerenciar o Proxmox VE, escrito em Python com PySide6. Ele visa reunir monitoramento de clusters e hosts, gerenciamento de VMs e contêineres e navegação no Proxmox Backup Server em uma única janela, sem precisar de navegador. Os recursos de monitoramento incluem gráficos de CPU, RAM, rede e uso de disco baseados em dados RRD do PVE, com intervalos de tempo arbitrários e exportação em CSV para gráficos de VM, host e armazenamento. Mostra resumos de pools de VMs com barras de progresso de recursos, visualizações de armazenamento agregadas e por nó com gráficos de nível de preenchimento, conteúdo de armazenamento (backups, discos de VM, imagens ISO, modelos), todos os snapshots de um host em uma única tabela, configuração e opções de hardware da VM, histórico de tarefas, interfaces de rede do host, serviços PVE, discos com deduplicação de multipath FC e uma aba de verificação de saúde que cobre limites de CPU/memória/disco, status de serviços críticos, assinatura e atualizações apt. Os indicadores de status usam marcadores coloridos. Os recursos de gerenciamento abrangem ações de energia para QEMU e LXC (iniciar, desligar, reiniciar, reset, parar, retomar), ações em massa em VMs selecionadas com progresso e resultados por VM, reversão de snapshots, diálogos de criação de VMs, criação de clusters e associação de nós, migração QEMU entre nós, clonagem de VMs e contêineres (completa ou vinculada), conversão de modelos, console SPICE via virt-viewer e um console noVNC integrado para VMs QEMU com ponte WebSocket e teclas modificadoras aderentes. As definições de armazenamento podem ser criadas, editadas e excluídas, e os arquivos de armazenamento podem ser enviados, copiados, movidos ou removidos. O suporte a backups inclui navegação em backups PBS por meio do PVE com colunas de proprietário, estado de verificação e notas, exclusão de backup individual, restauração em uma nova VM ou contêiner, conexão direta ao Proxmox Backup Server na porta 8007 com datastores e níveis de preenchimento, um painel PBS para status do datastore, snapshots por namespace e exclusão de snapshots, além de agendamentos de tarefas de sincronização/verificação/poda do PBS com execução manual. Os recursos de segurança e auditoria incluem tokens de API vinculados ao usuário criados automaticamente ao adicionar um servidor, armazenamento de tokens no chaveiro do sistema (KWallet, GNOME Keyring, Windows Credential Manager), configuração de nós em SQLite sem tokens em texto puro no disco, exportação/importação de configuração criptografada usando PBKDF2 e Fernet, alternância de validação de certificado SSL por host, proxy HTTP(S) opcional por host e filtros de log de auditoria com pesquisa de texto e filtragem por status. A interface fornece uma árvore de objetos com grupos de usuários, clusters e hosts autônomos, modos de exibição para hosts, armazenamentos e servidores de backup, grupos de hosts definidos pelo usuário com atribuição por arrastar e soltar, notas por item na árvore, pesquisa global (Ctrl+F), um painel de monitoramento com cartões de métricas e gráficos ao vivo, visualizações de lista em estilo cartão, comparação de nós, painel de múltiplos clusters, histórico de tarefas com selos de status, resumo na barra de status, ícone na bandeja do sistema, modo offline com recursos em cache, interface multilíngue (inglês, russo, árabe, chinês, francês, espanhol), vários temas incluindo variantes do KDE Breeze, atualização automática em segundo plano a cada 20 segundos, notificações toast, diagnósticos para hosts inacessíveis, carregamento paralelo de dados e persistência da geometria da janela, posições dos divisores e nós expandidos da árvore. Os requisitos incluem Python 3.10+ para instalações via pip/fonte, PySide6 com WebEngine, proxmoxer, requests/urllib3, pyqtgraph, keyring, cryptography e, opcionalmente, websockets para o console noVNC integrado no Linux. O acesso à API do Proxmox VE na porta 8006 e ao Proxmox Backup Server na porta 8007 é necessário para as respectivas integrações, e o virt-viewer é necessário para consoles SPICE/VNC via remote-viewer. As opções de instalação incluem zip para Windows e instalador NSIS, pip, pacotes .deb, .rpm, .tar.gz e .whl, com instruções de pacotes do sistema para Arch, Debian/Ubuntu e Fedora. O projeto é licenciado sob GPL-3.0 e inclui noVNC (MPL-2.0). É um cliente de terceiros não oficial, não afiliado à Proxmox Server Solutions GmbH ou à KDE e.V.