Em breve, poderemos não conseguir mais rodar softwares 32 bits nativamente no Fedora sem alguma gambiarra. Entenda como, quando e por que essa mudança deve ocorrer.
Depois de MUITA repercussão negativa, principalmente de Gamers, a proposta do Fedora de abandonar bibliotecas 32 bits foi recolhida, ao menos por enquanto.
É lamentável a onda de desinformação sendo veiculada na internet acerca dos pacotes 32-bits no Fedora, com os sites fazendo click-bait em cima de click-bait, dizendo que o Fedora vai matar a Steam, que o fim do suporte à 32-bits vai acabar, ou agora mais recentemente, que os desenvolvedores desistiram de abandonar o suporte à 32 bits no Fedora.
A verdade é uma só: A eliminação dos pacotes 32-bits não passava de uma proposta em discussão que recebeu grande oposição e já foi retirada, nada mais, nada menos. Era nítido que essa proposta não ia passar, porém em vários sites e inclusive algumas notícias veiculadas aqui, faziam um alarmismo absurdo dizendo que o fim dos pacotes 32-bits já era certo, sendo que o FESCo nem tinha tomado uma decisão. (Como que iriam reconsiderar algo que nem sequer foi considerado?) Eu pessoalmente concordo que o Fedora tem que se livrar desses pacotes e acho um absurdo voltarem atrás na proposta porque a empresa multibilionária não quer fazer o trabalho direito, mas enfim…
Até que durou bastante tempo.
Tem muitos jogos que são 32 Bits que foram feitos numa época em que 4 GB de RAM era um completo exagero. O que fazer com esses jogos?
Não se trata de “não querer fazer o trabalho direito”, mas sim de manter a compatibilidade com o que já foi feito.
Mas, como o Proton é um Fork do Wine, pode ser que o trabalho do Wine no WoW64 possa ser aplicado no Proton, assim acabando com a necessidade de usar as bibliotecas de 32 Bits para esse fim.
Mas daí vem outra questão: Há jogos nativos do Linux na Steam, que foram feitos para 32 Bits? Se houver, aí tem que se pensar no que fazer, pois esses jogos dependeriam dessas bibliotecas de 32 bits.
Só espero que o proton não desfaça disso ou teremos que usar emuladores para aplicativos de 32bits mas será que a microsoft já pensou em algo similar ?
O client da Steam para o MacOS já é 64-bits, ou seja, significa que é possível ter um client 64-bits para Windows e Linux. O Wine10 já tem WoW64 e não necessita mais de pacotes 32-bits para rodar esses aplicativos, sendo que a tendência é que quando o Fedora 44 for lançado, o WoW64 esteja muito mais robusto no Wine.
Há o flatpak como alternativa ou até emulação para esses aplicativos, como apontaram na discussão, mas acredito que isso não seja problema do Fedora. Se você quer utilizar software legado, isso é uma questão sua e a distribuição não tem obrigação de suportar isso, ainda mais uma distro cutting-edge como Fedora.
A versão flatpak da Steam tem problemas, mas são problemas que poderiam ser resolvidos com um maior apoio por parte da Valve. Aliás, vale ressaltar que a Steam nem sequer suporta oficialmente o Fedora. Eu acho engraçado como a Valve se vende como uma empresa que se importa com os clientes e usuários de Linux, mas nem suporta a maioria das distribuições apoiando um formato de empacotamento mais universal como flatpak/appimage/snapd, o que resolveria também o problema atual.
Mas quase não tem jogos compatíveis para MacOS, então esse não é um bom argumento a seu favor.
Há distribuições em que não é possível usar a Steam em Flatpak. Nesse caso, o que fazer?
O Flatpak, por segurança, tem as limitações que o pacote nativo não tem. Simples assim. No pacote nativo, não precisa configurar as permissões que tem que configurar no pacote em Flatpak.
E para alguns tipos de Aplicações, o Flatpak limita muito. Só ver o Boxes nativo e em Flatpak. O Boxes nativo traz um monte de dependências junto com ele, mas ele permite acessar dispositivos USB. Coisa que, até pouco tempo atrás, o Boxes em Flatpak não conseguia fazer.
Assim, o Flatpak é excelente para você não encher o seu sistema com 2050 dependências de outros ambientes gráficos, mas não é tão bom assim quando se tem que mexer em permissões para habilitar certas coisas.
São distribuições de nicho, e o foco do tópico é o Fedora.
E quantos jogos 32-bits são nativos apenas do Linux? Jogos 32-bits para Linux e Windows podem ser instalados facilmente pelo Wine com WoW64 ou serem utilizados através de um runtime (A própria Steam tem um runtime para jogos nativos do Linux que pode ser adaptado para suportar esses jogos mais antigos sem versão 64-bits)
Mas esse não é o caso da maioria das aplicações, e os problemas da versão flatpak da Steam são mínimos e relacionados ao SteamVR.
O Arch não tem versão 32bits, mas sim repositório.
Eu concordo que a distribuição não é obrigada a suportar 32-bits até 2038, mas sugerir flatpak é gambiarra, nunca vai ser tão bom quanto um pacote nativo de verdade.
Eu estou curioso de como vai ser o desfecho dessa história.
Se for pra não usar versão nativa, então é melhor que a Steam oficial seja a Snap.
Snap aparentemente tem menos limitações que o Flatpak.
Bom, o Rocky Linux é “baseado” no RHEL que é baseado no Fedora. Então conta.
Jogos nativos do Linux não rodam via Wine. Afinal, o Wine só traduz programas feitos para Windows e o WoW64 apenas iria beneficiar esses jogos feitos para Windows.
Eu não sei quantos jogos de 32 bits são nativos para Linux, mas o Team Fortress 2, Counter Strike, Half Life, Stardew Valley, Don’t Starve, The Stanley Parable, são exemplos de jogos que não requerem um sistema de 64 Bits para rodar. Talvez sejam jogos feitos para 32 Bits? Não sei, mas um sistema de 64 Bits não é um requisito para esses jogos.
E sem contar os jogos que exigem 4 GB de RAM, mas não exigem um sistema de 64 bits para rodar. Até porque, o limite dos 32 Bits é justamente 4 GB de RAM.
Basicamente, (quase) qualquer coisa lançada de 2015 pra trás, não exige um processador de 64 Bits para rodar, pois exigir mais do que 4 GB de RAM naquela época não era uma coisa muito comum, a não ser em jogos realmente muito grandes.
Distribuições baseadas em outras estão sujeitas a serem influenciadas pelas decisões tomadas pela distribuição base. Ou eles se adaptam ou encerram o projeto, simples assim
A maioria dos jogos tem versões para Windows e Linux, e a versão Windows pode rodar no Wine. São raríssimos os jogos feitos apenas para Linux, e mesmo esses jogos podem rodar por meio de emulação caso não suportem 64-bits. E essa é só mais uma das várias opções para continuar a rodar jogos legados. É possível simplesmente usar o flatpak, containerizar a Steam usando o distrobox e rodar os jogos por lá, usar e apoiar outro formato de empacotamento como snapd/appimage, colocar as bibliotecas 32-bits em outro repositório mantido pela comunidade..
Há meu entender o que ocorre é assim:
Os programas 32bits irão continuar a funcionar em plataformas 64bits, isso é um fato.
No windows essa regra ainda procede e se no linux não então o pinguim está andando na contra-mão, a menos que ele tenha uma idéia que ainda nós não processamos tipo:
As distros podem encerrar o suporte 32bits mas quem quiser ainda usar o 32bits terá que usar um emulador de sistemas, simples assim.
Lembrando que os emuladores de sistemas não foram desenvolvidos só para testar, você pode instalar um sistema que quiser e trabalhar com ele mesmo sendo emulado e que não vai mudar nada.
Mas tem distribuições baseadas em outras, que mudam algumas coisas. Por exemplo: O Archcraft e o EndeavourOS são baseados no Arch, porém não consigo rodar a Steam em Flatpak no Archcraft. Por lá, tive que instalar o a Steam pelo multilib
.
Só se você rodar a Steam via Wine. Aí sim que a versão do Windows daquele jogo será instalada. Se você usa Linux, a versão que será instalada é a do Linux.
Por exemplo: O Super Auto Pets é um jogo que é nativo do Linux e Windows, e a versão instalada é justamente a do Linux, porque eu estou no Linux.
Por outro lado, tem o Atlyss, que existe para Linux, então a versão do Windows foi instalada via Proton. Veja que os arquivos são da versão em Windows.
E sim, estou usando a Steam com o Proton ativado. E nos jogos que tenho que são Windows/Linux, a versão que foi instalada foi a do Linux.
E até instalei o Team Fortress 2, que tem versão de Windows e Linux. E adivinhe: A versão Linux foi instalada.
A não ser que tenha alguma forma de forçar a a instalação da versão Windows de jogos nativos para Linux, essa sua alternativa é meio boba.
Vamos a essas suas alternativas
-
Usar o Distrobox: Não é todo mundo que consegue instalar um Distrobox para fazer isso. Então, isso sequer é uma alternativa.
-
Flatpak: tem seus problemas também. Principalmente se vai usar algo que é fora do quadradinho que o Flatpak permite você fazer.
-
Snap: Já existe a Steam em Snap, mantido pela Canonical. E não é todo mundo que gosta de Snaps.
-
Repositório 32 Bits: O que muitas distros já fazem, manter um repositório de 32 bits.
O Windows mantém as bibliotecas e componentes de 32 Bits para essa compatibilidade, na pasta C:\Windows\SysWOW64
. Ou seja, no Windows de 64 Bits tem duas pastas de Sistema: Uma com os componentes em 64 Bits (System32) e uma outra com os componentes em 32 Bits (SysWOW64).
O único sistema relevante de Desktop que realmente encerrou o suporte aos 32 Bits, foi o MacOS. Porque a Apple pode fazer isso, afinal o único SO que roda nos Macs é justamente o dela e ela pode fazer o que quiser com o sistema dela.
Se o suporte a 32-bits fosse removido, acredito que esse jogos provavelmente perderiam a compatibilidade com o Linux, mas também é possível utilizar o Steam Linux Runtime.
O Linux naturalmente tem uma curva de aprendizado.
Os dois formatos de empacotamento vem melhorando cada vez mais, e “não gostar de snaps” ou não gostar de flatpak não é justificativa para não usar. Mudar de sistema operacional também é uma possibilidade, tenho certeza que o Debian vai continuar a suportar essas bibliotecas por muitos anos.
E se o “Steam Linux Runtime” usa as bibliotecas de 32 Bits, que a Steam exige para instalar o pacote nativo? Afinal, ativar o suporte aos 32 Bits é uma exigência para instalar o pacote nativo da Steam.
Bom, mas se uma pessoa que só quer jogar um Team Fortress, ter que instalar um Distrobox, ela vai querer usar o Windows, onde ela não vai ter que fazer isso.
Não existe essa de “curva de aprendizado”. Isso é justificar a incompetência em fazer algo simples e fácil.
Gostar ou não de um formato de pacote, pode ser a justificativa para não usar. Tem gente que prefere o empacotamento nativo, justamente por ele não ter os problemas que há no Flatpak e nos Snaps.
Por exemplo: O pacote nativo da Steam roda em toda distro (o que não acontece com o Flatpak). Assim como os Snaps só são bem integrados ao Ubuntu.
Por outro lado, o Debian oferece versões mais antigas do Mesa, Kernel e outras coisas que são importantes para o desempenho de um jogo.
Flatpak é complicado até pra lançar versão Flatpak de tema, tem que enviar cada variação existente do tema, e só existe versão GTK3.
Eles complicaram tanto as coisas, que até parece que querem que a pessoa desista no caminho.
Fora que é complicado usar a instalação offline, que não permite exportar codecs.
Sempre vi a galera fingir que é um formato descentralizado, mas é só na teoria, na prática tu precisa do Flathub o tempo todo.
Pessoal superestima demais o Flatpak.