Skip to content

Windows Apps Servidor Opt-in

O Windows Apps roda programas Windows (.exe / .msi) dentro do seu servidor RoqueOS — usando o Wine (camada de compatibilidade Windows→Linux, sem máquina virtual e sem licença Windows) — e transmite só a janela do aplicativo pro seu navegador via noVNC. O programa aparece como uma janela nativa do RoqueOS, em qualquer dispositivo com navegador.

Por que isso é útil

Você tem um utilitário, instalador ou ferramenta legada que só existe em .exe? Em vez de precisar de um PC Windows, o RoqueOS roda direto do servidor e abre no navegador — TV, celular, tablet ou notebook.


Como funciona

┌──────────────────────────────────────────────────────────┐
│  Navegador (TV / celular / desktop)                      │
│  ROSWindowsApps.vue  ──  iframe noVNC (vnc.html)         │
└────────────────────────┬─────────────────────────────────┘
                         │ HTTP + WebSocket (auth via session token)

┌──────────────────────────────────────────────────────────┐
│  roqueos-server (NestJS) — WindowsAppsModule            │
│  ├── POST /windows-apps/sessions                        │
│  ├── HTTP proxy /sessions/:id/stream/*  (vnc.html)      │
│  └── WS proxy /windows-apps/ws  (teclado/mouse)         │
└────────────────────────┬─────────────────────────────────┘
                         │ Dockerode

┌──────────────────────────────────────────────────────────┐
│  Container Wine por usuário (app-only)                   │
│  Wine + Xvfb + matchbox (só a janela do app) + noVNC    │
│  /files  = seus arquivos do servidor  → drive  F:        │
│  WINEPREFIX persistente (apps/config sobrevivem)        │
└──────────────────────────────────────────────────────────┘

Cada usuário recebe o próprio container, com um WINEPREFIX persistente — programas instalados e configurações continuam disponíveis entre sessões.


Requisitos

  • Servidor RoqueOS conectado (a feature roda no servidor, não no navegador).
  • Servidor Linux amd64 (o Wine não roda em ARM aqui).
  • Feature habilitada pelo administrador (é opt-in — veja abaixo).
  • Recursos: ~1,5 GB de imagem em disco + ~2 GB de RAM por sessão.

Em fase de testes

Enquanto estabilizamos, o Windows Apps fica visível apenas para administradores do RoqueOS. Quando abrirmos para todos, esta nota sai.


Como habilitar (administrador)

A feature é opt-in. Habilite na instalação ou atualização do servidor:

bash
# Linux / macOS
curl -fsSL https://roqueos.com.br/install.sh | bash -s -- --with-windows-apps

# Windows (PowerShell)
& ([scriptblock]::Create((iwr -useb https://roqueos.com.br/install.ps1).Content)) -WithWindowsApps

Em um servidor já rodando, basta rodar de novo com a flag (o --update preserva suas configurações e secrets):

bash
curl -fsSL https://roqueos.com.br/install.sh | bash -s -- --update -y --with-windows-apps

Isso baixa a imagem do Wine e liga windowsApps no server-config.json. O app Windows Apps passa a aparecer no Launchpad.


Como usar

Abrir um .exe pelo Finder

  1. Abra o Finder.
  2. Duplo-clique em qualquer arquivo .exe ou .msi.
  3. A janela do Windows Apps abre e, em alguns segundos, o programa aparece rodando.

Funciona também pelo menu de contexto → Abrir com → Windows Apps.

Rodar um .exe de qualquer lugar

Se o .exe estiver em qualquer unidade (nuvem do RoqueOS, Google Drive, armazenamento de rede), o RoqueOS avisa que ele precisa ser copiado para o servidor:

  1. Aparece um aviso: "Copiar para o servidor?" → confirme em Copiar e abrir.
  2. Uma barra de progresso mostra a cópia.
  3. Ao terminar, o programa abre automaticamente.

Arquivos que já estão numa unidade do servidor (pasta Compartilhada ou seus arquivos do servidor) abrem direto, sem cópia.


Limitações (honestas)

  • Sem GPU dedicada: ótimo para utilitários, instaladores e apps 2D/produtividade. Jogos 3D pesados e qualquer coisa com anti-cheat não funcionam.
  • Compatibilidade varia por programa (é Wine, não Windows real). Consulte o AppDB do WineHQ em caso de dúvida.
  • Janelas de tamanho fixo (muitos instaladores) aparecem centralizadas, com área vazia em volta — especialmente no celular em modo retrato.
  • amd64 apenas.
  • Você é responsável pelas licenças dos programas que rodar.

Perguntas frequentes

Preciso de uma licença do Windows? Não. O Wine é uma camada de compatibilidade livre — não há Windows nem licença envolvidos.

Meus programas instalados somem quando fecho? Não. O WINEPREFIX é persistente por usuário; o que você instalar continua lá na próxima sessão.

Posso rodar vários programas ao mesmo tempo? O servidor tem um limite global de sessões simultâneas (padrão 5). Se estiver cheio, aparece um aviso para tentar de novo em instantes.

Não aparece no Launchpad. A feature é opt-in e, na fase de testes, só admins a veem. Confirme com o administrador que o servidor foi instalado com --with-windows-apps.

Lançado sob a Licença MIT.