1 de novembro de 2015

SteamOS "Brewmaster" no VMware


Após o pedido do iLoveiCarly (o que eu não faço rindo o que você me pede cholando) para falar sobre o SteamOS, já que a matéria do Dio Linux foi porca superficial, e como eu me interesso pelo maravilhoso mundo do código-aberto, fui dar uma pesquisada.

A Valve (aquela que criou o Half-Life) montou uma plataforma de entretenimento vendas, seguindo o exemplo da Apple com sua  App Store [curiosidade: o primeiro iPhone não tinha loja e por isso surgiu, no mês seguinte, o primeiro jailbreak para iOS]. Esse esquema de loja virtual dá muito dinheiro. Dá dinheiro pra c*ralho.

A Microsoft, que sempre está um passo atrás, percebeu a importância desse esquema e resolveu lançar a Windows Store junto com o controverso Windows 8, já que tá todo mundo ganhando dinheiro com isso. Menos no mundo Linux. Esse esquema de loja é o famoso "repositório" que existe há anos nas distros.

E o que aconteceu? A Valve ficou p*tinha com a Microsoft, porque claramente a Windows Store tem potencial para tirar o controle da Valve sobre os gamers. Pior: ter que pagar uma taxa de camaradagem hospedagem para a Microsoft, já que é mais prático centralizar suas coisas.

A resposta da Valve foi expandir a plataforma Steam criando as Steam Machines rodando o SteamOS, além do Steam Controller, Steam Link e Steam VR,  (nomes bem originais) para concorrer com o Xbox e o Windows + Store. Desde o anúncio até o momento essa bagaça não vingou. E dificilmente vingará pois as Nvidia, Intel, AMD e afins não tem o mesmo carinho pelo Linux. Sem contar que o SteamOS é basicamente um fork do Debian. E é isso que interessa.

O SteamOS é basicamente uma distro e linux. A versão mais atual é o SteamOS "Brewmaster" ("mestre-cervejeiro" na tradução G1zmodo) baseado no Debian 8.1 Jessie, que possui o kernel 3.18 LTS (long-term support). Quem quiser testá-lo, é só baixar no repositório oficial da Valve e se basear nesse tópico. Para quem usa versões anteriores do Steam OS, por enquanto não é possível fazer uma atualização, tem que instalar do zero mesmo.

Segundo a Valve, os requisitos mínimos são:
  • Processador 64 bits da AMD ou Intel;
  • Disco com 250GB ou superior (por causa dos jogos, não da distro em si);
  • Memória de 4GB ou superior;
  • Drive de DVD ou porta USB para instalação.

Após a instalação, as atualizações do sistema serão feitas automaticamente. Alguns problemas já foram detectados e podem acompanhados em um GitHub da Valve. Seguindo a filosofia, a maior parte dos componentes é código-aberto, exceto o próprio software Steam e também alguns drivers proprietários Mas no geral, é aberto.

Como é um sistema operacional focado em vendas jogos, a usabilidade é toda voltada para o controle (no "Brewmaster" agora dá pra usar o controle do Xbox), então a interface lembra um video-game. Resolvi instalar em uma máquina virtual para dar uma olhada. Apesar que todos os recursos não estarão presentes por limitação de ser uma VM, dá para se ter uma ideia.

Para quem quiser instalar também e não ideia de como começar, basta seguir os primeiros passos da matéria de como instalar o Linux no VMware, então na parte de escolher o .ISO é só selecionar o do SteamOS. Após iniciar a VM, aparecerá algo assim:


Vamos de "Automated Install" e ver se é tudo automático mesmo. Lembrando que o objetivo do Steam OS é instalar em Steam Machines, não em dual-boot ou no PC da SuaMãe™.

Durante a instalação, que pode levar alguns bons minutos, dá para perceber que é baseado no Debian. Esse rosa-apple é inconfundível!


Após instalar a base do sistema, ele vai perguntar onde instalar o GRUB (para bootar o linux). Eu coloque no "/dev/sda" conforme sugerido:


Depois de finalizado, ele vai reiniciar, bootar e, ao entrar no sistema, vai atualizar. Nessa etapa podemos ver que ele roda o Gnome 3.


Depois de atualizar o sistema, ele vai reiniciar e bootar em modo de backup ou algo do tipo, usando o CloneZilla. Não se desespere!


Após esse processo, basta clicar em "Reboot":


Agora é uma hora muito importante! PRESTA ATENÇÃO! Como o Steam OS é feito para Steam Machines, ele está otimizado para rodar nelas, ou seja, tudo bonitinho, driver da Nvidia/AMD etc. Mas como estamos em uma máquina virtual e é bem limitado, vai dar merda. Se tentar bootar normalmente, muito provavelmente aparecerá uma tela preta (aqui aconteceu isso). Então vamos fazer o seguinte:

Após o boot, caso não apareça a tela do GRUB (gerenciador de boot do linux) aperte ESC freneticamente até aparecer ele e escolha "Advanced options for SteamOS GNU/Linux":


Em seguida, a opção com "Recovery Mode" para ele bootar em modo terminal:


Nele, vamos remover os drivers da Nvidia com o comando:
# apt-get purge “.*nvidia.*”

Vai perguntar se você realmente quer e aperte "Y", vai aparecer um monte de coisa sendo removida. Depois reconfigurar o X:
# dpkg-reconfigure xserver-xorg

Agora é preciso instalar as ferramentas do VMware Workstation lá no SteamOS. Clica no botão "Player", vá em "Manage" e "Install VMware Tools":


Vai aparecer uma mensagem que o OS travou o drive de CD-ROM porque provavelmente está usando porque a instalação foi a partir de um .ISO no drive virtual da máquina virtual. Mas como já terminamos a instalação, não tem problema. Clique em "YES". O VMware vai usar o drive do CD-ROM para servir como ponte entre os arquivos dele e o OS na máquina virtual:


Agora você vai ter que montar o driver no linux:
# mount /dev/cdrom /media/cdrom


Depois de montado, copie o arquivo VMwareTools-xxxx.tar.gz para o diretório TMP:
# cp /media/cdrom/VMwareTools-xxxx.tar.gz /tmp

Dica: digite até "tools-" e aperte TAB, para autocompletar.

Para descompactar o arquivo:
# tar zxpf /tmp/VMwareTools-xxxx.tar.gz

Depois execute a instalação:
# ./tmp/vmware-tools-distrib/vmware-install.pl

Então vai aparecer onde você quer instalar os binários:


Vá dando ENTER para tudo, pois assim irá no padrão. Após terminar, reboote:
# reboot

Aqui estava dando uma tela preta e com áudio. Eu tinha esquecido de habilitar a aceleração gráfica 3D:


Enfim, depois de muito trabalho:









Então esse é o famoso SteamOS Brewmaster!

Basicamente é o Debian 8.1 otimizado para jogos e com o software do Steam em tela cheia. Tanto é que dá para logar no Gnome 3 se alterar o gerenciador de login do X, mudando do lightdm para o gdm3.

Não sei qual é a vantagem de usar o SteamOS em vez do software Steam no Windows, que já é otimizado e muito fácil de usar também. Seria a praticidade de ter um device na sala e rodá-lo com um botão? Bem, e quando for atualizar? Considerando que as empresas podem construir suas Steam Machines com um hardware bem variado. Atualmente existem mais de 10 no mercado oficialmente.

Continuo torcendo para que dê certo, pois mais jogos no Linux, mais pessoas usando! Mais pessoas usando, mais as empresas darão suporte. E assim vai.