Em um mundo perfeito, os desenvolvedores do Wine poderiam seguir uma especificação fixa com a qual construir um substituto totalmente binário compatível para o Windows. Mas esse não é o caso. Eles conhecem as APIs públicas e sabem o que essas APIs devem fazer. Tudo o resto (ou seja, como eles fazem isso) é uma adivinhação educada.
O ideal também envolveria o funcionamento do Windows de forma consistente, o que não acontece. As peças foram parafusadas em códigos muito antigos. Os desenvolvedores de aplicativos podem solucionar esses bugs ao criar seus aplicativos, mas isso também significa que o Wine precisa seguir tudo, até as peculiaridades e, muitas vezes, por tentativa e erro (usuários enviando bugs para aplicativos específicos).
Não é garantido que nada funcione. Mesmo as coisas que funcionam perfeitamente, até melhores que as nativas, não garantem que continuem assim. Freqüentemente, no mundo do vinho, para consertar algo, você precisa quebrar meia dúzia de outras coisas ... Você apenas espera que você (ou outra pessoa) encontre esses novos erros antes que o código atinja uma versão estável.
Se você deseja suporte estável a longo prazo para um lote de aplicativos, consulte o ramo comercial do Wine: CrossOver .
Para fazer generalizações abrangentes:
Os jogos tendem a ser pouco suportados pelo vinho. As coisas meio que funcionam, quase funcionam, mas geralmente falham miseravelmente. Existem alguns destaques raros, mas como regra geral, sou pessimista em executar qualquer jogo com vinho.
Por outro lado, pequenos programas "do tipo aplicativo" tendem a funcionar muito bem. As ferramentas para executar uma única coisa geralmente funcionam, seja convertendo um formato de dados, exibindo um arquivo ou executando outra função única. Em geral, se o aplicativo inteiro tiver menos de 10 megas, é bem provável que funcione.
Onde o suporte a aplicativos tende a falhar é quando você entra em projetos maiores com muito código herdado.
fonte
Há também a possibilidade de usar o Mono para programas do Windows que são escritos em .NET. Pesquise e instale-o. Para usar, basta executar
mono ProgramName
fonte