- WinBoat destaca a praticidade em relação ao WinApps com automação de configuração e interface de usuário intuitiva
- Suporta apps importantes como a suíte Adobe e Affinity Photo, que não são compatíveis com Wine ou CrossOver
- Permite configurar hardware exclusivo do Windows com o recurso experimental de USB passthrough
- Tem alta capacidade de expansão, com suporte planejado para virtualização de GPU, Flatpak e Podman
- Permite usar livremente apps populares do Windows, como o Office 365
O que é o WinBoat
- WinBoat é uma ferramenta que ajuda a executar apps do Windows com fluidez em ambientes Linux
- Sem exigir do usuário configuração manual trabalhosa, ele oferece uma experiência integrada com uma única configuração, desde que os pré-requisitos essenciais estejam prontos
- Pode ser usado diretamente em uma interface única, sem necessidade de editar arquivos de configuração nem aprender comandos complexos de CLI
Comparação com o WinApps
- O WinApps exige que várias etapas de configuração sejam feitas manualmente e requer o uso de TUI, widgets de barra de tarefas ou comandos de CLI
- O WinBoat, após a instalação, automatiza toda a configuração de uma vez e oferece uma UI intuitiva, completando a experiência geral do usuário
- Garante facilidade de uso sem exigir gerenciamento direto de arquivos de configuração nem memorização de comandos de CLI
Vantagens em relação ao CrossOver ou WINE
- Também executa diversos apps que são difíceis de rodar no Wine e no CrossOver (por exemplo, Affinity Photo, suíte completa da Adobe, Paint Tool Sai, AeroChat, Acrobat, Office etc.)
- Oferece um ambiente completo de desktop Windows e garante compatibilidade com vários tipos de software
Suporte a periféricos/hardware e passthrough
- No caso de dispositivos baseados em USB, o WinBoat oferece suporte a USB passthrough desde a versão 0.8.0 (experimental), permitindo configuração com software para Windows
- Usuários de versões antigas do WinBoat podem adicionar dispositivos USB editando diretamente o docker-compose.yml
- Na versão 0.8.0 ou superior, apenas o método integrado é compatível
GPU passthrough e virtualização gráfica
- Atualmente, GPU passthrough não é suportado
- Há planos de integrar no futuro aceleração de GPU com uso de drivers paravirtualizados, Indirect Display Driver e integração com Looking Glass
- Segundo os testes, alguns drivers ainda não são adequados para uso real, e serão integrados quando estiverem prontos
Jogos e segurança
- Jogos com anti-cheat em nível de kernel não podem ser executados devido às limitações do ambiente virtualizado
Expansibilidade e planos de distribuição
- Há suporte planejado para Podman (alternativa ao Docker), mas a funcionalidade ainda não está completa por causa de problemas de rede
- O empacotamento em Flatpak também está nos planos, mas há desafios técnicos como interfaces entre sistema e app e exposição de ferramentas
Suporte a software Windows e Office
- Apps importantes do Windows, como o Microsoft Office 365, funcionam normalmente
Conclusão
- O WinBoat é uma solução que permite usar software aplicativo do Windows no Linux com fluidez, com base em vários pontos fortes como automação amigável ao usuário, compatibilidade e expansibilidade
1 comentários
Comentários do Hacker News
Já existem projetos parecidos no mundo dos games, como o Looking Glass, que também usa uma VM do Windows sobre KVM (embora seja apresentado como se o Windows rodasse direto em um contêiner Docker, na prática a estrutura funciona sobre KVM).
Em termos de experiência do usuário (UX), é parecido com o RAIL.
Isso não quer dizer que o projeto seja ruim, mas no fim continua sendo uma das duas abordagens de sempre: simulação/reimplementação de API ou executar o próprio SO (Windows), então não é algo totalmente novo.
Se fosse uma terceira via, por exemplo conversão de ABI in-place, aí sim eu acharia uma grande notícia.
As páginas do projeto em geral não dizem com clareza o que ele faz.
Metade delas é basicamente algo como “Plorglewurzle alavanca big data blockchain para fornecer microsserviços sublineares na infraestrutura Azure Cloud”.
Ainda assim, pelo menos este projeto deixa claro que precisa de uma instalação do Windows.
dockur/windows:latest+ FreeRDP em modo rootless + um pequeno daemon que expõe por API os apps instalados na VM.Se essa última parte não for necessária, talvez seja melhor usar só a imagem do
dockur/windowscom FreeRDP.sempre use apps nativos. Nem use WINE, e basicamente não tente compatibilizar com algo que é hostil por natureza.
Também não use VM, e especialmente não recomendo dual boot de jeito nenhum. É muito ruim.
O melhor é migrar completamente para Linux e não olhar para trás.
O Proton é um caso um pouco especial, porque a Valve investe uma quantidade enorme de energia todos os dias para fazer aquilo funcionar bem.
A boa notícia é que investir no avanço da API/ABI do Linux inevitavelmente dá resultado.
A contribuição da Valve para MESA e amdgpu é realmente impressionante.
Queria que a Valve tratasse os títulos AAA e indies no Linux como exclusivos premium da Steam.
Também espero que os desenvolvedores de jogos passem a pensar “o port para Linux precisa obrigatoriamente ficar com desenvolvedores Linux”.
PS: durante muito tempo fiquei triste porque Counter-Strike não rodava no Linux, mas a Valve fez um port nativo e ficou ótimo.
PPS: também uso Mac por causa de dois apps incompatíveis, Garmin Express e Zwift; dá menos manutenção que Windows, mas faz menos coisas que Linux.
O navegador de arquivos é bem ruim e o gerenciamento de janelas é irritante.
Mesmo assim, não me dá dor de cabeça o dia inteiro.
Counter-Strike 2 não roda no Mac, então essa parte tem que ficar por conta do Linux.
Contraponto: o Wine funciona muito bem (principalmente com softwares antigos).
Quando as pessoas se impõem esse tipo de regra à toa, muita gente acaba não conseguindo usar Linux.
Minha visão: o correto é “não tente se alinhar com APIs fundamentalmente instáveis”.
Texto relacionado: Win32 is the stable Linux userland ABI and the consequences
Blog de referência: Win32 the only stable ABI
Para ser preciso, acho melhor usar apps nativos para GNU/Linux, mas antes de tudo é preciso que as APIs sejam mantidas estáveis por muito tempo (no mínimo 20 anos).
Pela minha experiência, foram poucos os casos em que a versão nativa para Linux estava realmente bem-feita.
Em muitos casos, a versão Windows rodando via Proton tinha qualidade melhor.
Sou grato a empresas como a Larian, que fez uma versão nativa excelente de BG3 recentemente.
Concordo totalmente que o Proton funciona bem graças ao esforço constante da Valve.
Ficar pedindo ports nativos aos desenvolvedores de jogos não costuma funcionar muito bem na prática.
No fim, foi graças ao Steam Deck, à Valve e ao Proton que o mercado pôde começar a se mover lentamente em direção ao Linux.
Por exemplo, um app pequeno para desenhar padrões de tricô, que nem é open source.
Nesses casos, pode ser essencial ter um ambiente de compatibilidade que funcione sem dor de cabeça.
(Os jogos até que foram parcialmente resolvidos pelo Proton.)
Não acho que isso seja um bom conselho.
Muita gente quer usar Linux e ainda assim rodar apps do Windows, e o Wine funciona bem.
Para os apps que não funcionam no Wine, dual boot ainda pode resolver tranquilamente.
Não basta dizer que consegue rodar apps de escritório; eu queria ver como isso aparece na prática.
Eles enfatizam a experiência “seamless”, mas não mostram nenhuma demo.
Realmente não consigo entender isso.
Não há informação alguma sobre como janelas individuais do Windows se integram ao desktop Linux (Alt-Tab, Ubuntu Dock etc.), ou se no fim aparece só uma única janela gigantesca da VM.
Queria entender por que não mostram isso no site.
Infelizmente, nem o uso básico funcionou direito.
Ao abrir o navegador Edge, a janela aparecia, mas ficava travada, e não parecia haver forma de recuperar.
Mesmo fechando a janela, a borda continuava lá.
Ao tentar conectar com a opção “Desktop”, tudo congelava.
Consegui conectar à sessão pela webview embutida, mas parecia exigir permissão para conexão RDP.
Não fui mais a fundo, e como não servia para o que minha esposa precisava, acabei voltando o notebook para Windows.
Espero que a integração com apps/sistema do Windows melhore mais daqui para frente.
Muitos apps de Windows funcionam bem no Wine, e às vezes com alguns pequenos ajustes isso já resolve, então talvez também fosse uma opção válida.
Também gostaria que existisse algo parecido para rodar apps de macOS no Linux.
Por isso, a combinação macOS apps + Linux provavelmente ainda vai demorar para se tornar algo comum.
Se você precisar de uma VM completa de macOS, pode olhar os projetos da dockur: dockur/macos
Mas hoje nenhum dos dois oferece um modo “seamless”.
Se de qualquer forma você vai precisar usar o desktop inteiro, acho melhor aproveitar uma visualização gráfica com aceleração por hardware do que usar RDP.
Nos últimos anos usei bastante o WSL no trabalho, e poder abrir apps GUI quase como se estivesse trabalhando direto no Windows aumenta a produtividade.
Tem umas esquisitices, mas no geral está em um nível bem bom.
Sempre me perguntei se não existiria algo parecido no sentido inverso para Linux.
Na prática, raramente precisei usar programas de Windows no Linux.
No passado consegui rodar GTA: Vice City quase perfeitamente com Wine, por exemplo.
Mais recentemente tenho pensado bastante em como seria bom ter algo no estilo “Linux Subsystem for Windows” para simplesmente abrir qualquer programa.
Instalei Debian no notebook da minha filha, e espero que o WinBoat possa virar uma alternativa quando ela precisar obrigatoriamente de algum produto da Microsoft para tarefas da escola.
O suporte a Wayland ainda está em desenvolvimento (issue sobre Wayland), mas por enquanto ainda dá para usar razoavelmente com xwayland.
Quando o IDD sair, o Looking Glass vai passar a funcionar em setups com iGPU (sem aceleração 3D, mas ainda assim útil).
A grande sacada do Looking Glass sempre foi compartilhar memória de vídeo entre o compositor do Windows guest e o programa cliente exibido no host (usando qemu).
Infelizmente ainda é preciso instalar separadamente o driver fora do kernel (
kvmfr), mas como ele também permite compartilhar memória comum além da memória de vídeo, espero que isso possa trazer algum ganho de desempenho.Vídeo de demonstração: link do YouTube
seria melhor não destacar tanto o Discord logo na página principal do site.
Discord também é muito usado como servidor de C2, então em ambientes com segurança reforçada isso costuma gerar alerta no acesso.
Na nossa empresa o alerta felizmente vem direto para mim, mas ainda assim é um alarme desnecessário.
No mínimo, seria melhor esconder isso atrás de um link.