Usuário de Windows de vida toda muda para o sistema Linux da System76. Como está sendo a experiência?
Eu inicio este texto já deixando claro que eu não tenho nada contra Windows ou Microsoft, existem muitas razões pelas quais diferentes usuários de Linux desgostam de software pago ou fechado, mas este não é o meu caso. Todo este projeto nasceu de um sentimento bem simples: curiosidade. Eu venho alimentando minha vontade de usar sistemas Linux há uns bons 3 ou 4 anos, apesar da minha experiência com o OS do pinguim ao longo da vida ser limitada à curtas menções por algum professor de informatica aqui e ali, e discussões em fóruns online. Mas eu queria tentar, então comecei aprendendo o básico do sistema de arquivos e o Terminal em um curso online (estava grátis), usei uma máquina virtual com o Ubuntu 18.04 - Ubuntu sendo a distro que eu mais tinha familiaridade até então. Quando achei que já estava pronto, comprei um SSD de 240 GB e instalei o sistema nele, pois ainda queria preservar minha instalação do Windows 10 Pro. Foram muitos dias de pesquisas e testes no distrotest, mas no fim escolhi o Pop!_OS 21.04 da System76.
"Por que o Pop!_OS com o GNOME?"
Quando comecei a pesquisar por uma distro para eu usar no meu PC principal, eu queria uma distro estável e com bastante suporte online - em questão de muitos guias e tutoriais. Já isso me limitou à distros baseadas no Debian e Ubuntu, mas como eu não gosto de Snaps, descartei o sistema de Canonical de início. Fiquei entre o Linux Mint com a interface (DE) Cinnamon, e o Pop!_OS. Escolhi o sistema da System76 por ser basicamente o Ubuntu, só que sem Snaps, e ser popular entre muitos gamers.
Confesso que aparências foram determinantes para esta escolha, e apesar de eu reconhecer que o Cinnamon é uma DE muito sólida e completa, nunca fui com a cara dela, e eu propositalmente buscava uma experiência diferente da do Windows. GNOME padrão tem muitos problemas, mas a modificação que a System76 fez em cima dessa DE - que eles agora chamam de COSMIC - me agradou, ou pelo menos aliviou alguns dos problemas mais graves do GNOME. Os desenvolvedores do Pop!_OS estão trabalhando em uma nova DE feita em Rust que herdará o mesmo nome da DE atual, resta saber como será o resultado final.
Outro ponto relevante para essa escolha foram os drivers da Nvidia. Meu PC usa uma GeForce GT 1030, e eu não queria quebrar a cabeça tentando fazer a minha GPU funcionar no Linux. O Pop!_OS já vir com os drivers oficiais da Nvidia embutidos na ISO foi uma mão na roda e eu gostaria de ver isso sendo implementado em outras distros também.
Pop!_OS no meu dia-a-dia
Não tenho do que reclamar. Eu fui com a mente aberta que eu estaria aprendendo um sistema operacional inteiramente diferente do qual estou acostumado (Windows). Depois de algum tempo você se acostuma e apenas usa o seu PC para as suas tarefas diárias. Considerando que muitas destas tarefas e programas que usamos diariamente são todos feitos online por meio de um navegador, mudar para o Linux não afetou quase em nada. Instalar o Google Chrome e carregar meus favoritos já foi 70% do caminho andado - inclusive estou digitando este texto do Pop!_OS!
Todo o hardware do meu PC em si foi reconhecido e instalado logo de cara, sem nenhum problema. Som, vídeo, internet. Fiquei muito surpreso ao ver que a Impressora de rede (HP Deskjet Ink Advantage 2546) que fica em outro cômodo da minha casa foi automaticamente reconhecida e instalada, me possibilitando escanear e imprimir documentos no Linux direto da rede Wi-Fi da casa. Minha antiga impressora HP Photosmart C3180 também instalou no Pop!_OS 21.04, via porta USB, coisa que nem o Windows 10 consegue fazer - eu tenho que instalar o driver proprietário da HP, que instala um monte de tralha que eu não preciso junto - Infelizmente o escâner dessa impressora antiga não foi detectado pelo Linux, nem após atualizar para a versão 21.10 do S.O.
Os problemas na minha impressora antiga podem ser relacionados ao simples fato de que este modelo não tenha o suporte devido que serviço CUPS, que é utilizado pela vasta maioria das impressoras no mercado atualmente para se conectarem com sistemas Linux e Mac OS. CUPS foi desenvolvido pela Apple e se tornou Open Source em 2007, mesmo ano em que eu comprei esta Photosmart C3180. Isso é só uma teoria minha, mas acho que faz sentido. De qualquer maneira, impressoras e escâners mais atuais devem funcionar sem problemas no Pop!_OS e Linux em geral.
Com programas e utilitários levou um pouco de tempo para eu me acostumar, e algumas coisas eu acho que nunca irei me acostumar. O Pop!_OS 21.04 já vem com o pacote Libre Office pré-instalado. Após alguns ajustes na interface eu já estava pronto para usar. Eu não tive problemas em abrir documentos do Microsoft Office no Libre e vice-versa, mas costumo usar mais o Google Docs para redigir meus trabalhos, deixando o Office mesmo para coisas mais especificas da minha faculdade.
Loja de aplicativos
COSMIC
Eu gosto dos COSMIC DE. Bem responsivo, não consome muitos recursos da máquina, e me atende bem, no geral. As funções de Workplaces virtuais e o Tiling são as minhas favoritas. Eu substitui o botão de Workplaces pelo Hot Corner, que torna essa função muito mais conveniente na correria do dia-a-dia.
O window tiling é uma coisa que eu ouvia muito e não conseguia entender porque tanta gente gostava, mas hoje é uma das minha funções prediletas. Com isso ligado o Pop!_OS automaticamente organiza todas as janelas ativas no seu desktop de modo que elas não se sobreponham, permitindo que você possa visualizar o conteúdo de todas elas ao mesmo tempo.
Funciona melhor em monitores maiores |
Jogando no Pop!_OS
Duas coisas que eu fiz para aumentar ainda a mais a performance dos jogos do Pop!_OS foram: ativar a utilização de sombreadores (shaders) no Steam. Isso coleta dados de sombreadores da sua GPU quando os jogos não estão em execução, e demora muito, além de consumir espaço em disco, mas vale muito apena para reduzir o overhead do Proton. E também instalei o Gerenciador de Pacotes Synaptic para, através dele, instalar o GameMode. Essa é uma função que já vem pré-instalada no Ubuntu, mas está ausente no Pop!_OS. Recomendo instalar o GameMode e o GameMode Daemon.
Depois de instala-los, você tem que adicionar o comentário nos jogos da Steam: gamemoderun %command%
Problemas Inesperados: Nvidia VS Linux (Aceleração de Hardware)
Minha experiência não foi totalmente livre de problemas maiores. Durante a minha navegação pela Internet eu percebi uma alta utilização da CPU quando algum vídeo na web estava sendo reproduzido, enquanto isso a GPU não era utilizada. Verifiquei várias vezes com programas como TOP, HTOP, NVIDIA-SMI, NVTOP, Nvidia XServer Settings, e o Psensor, todos eles mostravam que a minha GT 1030 não estava mesmo sendo usada para a renderização dos vídeos no Google Chrome. Testei o Firefox e o mesmo aconteceu. Depois de muito pesquisar em threads velhas de fóruns e leituras em artigos nas Wikis do Debian e do Arch Linux foi que eu descobri a razão: Nvidia não oferece suporte às APIs de decodificação de vídeo que as aplicações do Linux costumam utilizar. Significa que Chrome e Firefox não utilizam a GPU para facilitar na renderização dos vídeos da web, deixando toda a carga do trabalha nas mãos da CPU. Evidentemente isso é um problema, principalmente para PCs com processadores mais antigos e fracos. Isso tem o efeito de fazer a CPU esquentar mais e consumir mais energia, uma noticia nada boa para quem usa notebook.
Isso não é culpa do Linux, ou do Pop!_OS, o problema está na falta de suporte que a Nvidia dá para seus drivers no Linux, ignorando soluções e tecnologias já comumente adotadas pela grande parcela da comunidade. Quem já usa Linux há algum tempo sabe da rixa que a Nvidia tem com o Linux, algo que o próprio Linus Tornvalds deixou claro em uma conferencia. Isso torna a experiência de donos de placas da Nvidia muitas vezes inferior a de usuários de AMD e Intel, duas empresas que liberam o código fonte de seus drivers e são mais ativos em seus suportes ao Linux.
Esses problemas acontecem porque as placas de vídeo da Nvidia utilizam uma API de decodificação de vídeo que normalmente não é suportada pela vasta maioria dos navegadores e aplicações no Linux. Quando se analisa suporte para APIs de aceleração de hardware em Linux, existem três opções:
VA-API é suportado pelas placas da AMD, Intel (GPUs integradas), e Nvidia (apenas via os drivers open source Nouveau, que não são ideais para jogos). Caso o seu PC se encaixe nesse primeiro grupo, então você não terá dores de cabeça, pois Chromium, Firefox e outros players de vídeo (como o VLC) tem suporte nativo ao VA-API.
VDPAU é a API usada pelas GPUs da Nvidia e também da AMD, tanto nos driver oficiais quanto nos open source. Implementação do VDPAU nas placas da Intel é ruim. VDPAU é suportado por diversos players e aplicações Linux, como o já mencionado VLC, o Kodi, MPV, e outros, porém, não é suportado por nenhum navegador mainstream.
NVENC/NVDEC é a API proprietária da Nvidia, suportada por programas como OBS Studio e FFmpeg para gravação de vídeo, e MPV e FFmpeg para decodificação de vídeo.
O que eu poderia fazer então? Poderia ir na minha BIOS e ativar minha GPU integrada e tentar usar ela para decodificar os vídeos, mas eu não queria fazer isso, pelo menos não de imediato. Aqui vão duas propostas, ou dois "remendos":
No Google Chrome, instalei a extensão enhanced-h264ify e marquei para ela bloquear todos os codecs, menos o H264. Isso reduz o número de codecs utilizados pelos vídeos no YouTube. Em contrapartida, a qualidade dos vídeos cai bastante, e não é mais possível ver vídeos em 60 FPS no site, mas a sobrecarga na CPU diminui um pouco.
A segunda coisa que eu fiz foi instalar o MPV Player. Este é um reprodutor de mídia bem famoso no Linux, um que felizmente oferece suporte total à decodificação por hardware e é compatível com todas as APIs disponíveis no mercado. O MPV vem um uma extensão chamada yt-dl, que permite ao player rodar vídeos do YouTube direto do Terminal. Para fazer isso, é só abrir o Terminal, digital mpv, espaço, e colar a URL do vídeo em questão.
Como você pode ver na imagem acima, O Terminal fala que o vídeo está sendo renderizado na minha GPU, utilizando a API NVDEC. Eu recomendo demais que você leia o manual do MPV Player, vai ajudar ainda mais.
Contudo, o yt-dl pode ser lento para fazer o streaming dos vídeos. O que você pode fazer é dizer para o yt-dl rodar os vídeos em uma resolução menor, já que por padrão ele vai rodar os vídeos na maior resolução disponível. Para fazer isso, digite o seguinte comando no Terminal: mpv --ytdl-format=best[height=nº da resolução aqui] cole o link aqui. Conforme mostra a screenshot abaixo:
Como você pode ver na imagem à seguir, a GPU está bem em uso durante o MPV + yt-dl, e o uso da CPU é bem menor do que ver os vídeos do YouTube pelo navegador.
GPU em uso |
Baixa utilização da CPU pelo MPV |
Em comparação, observe como a utilização da CPU é baixa no Windows 10 no mesmo computador quando o Chrome está reproduzindo um vídeo no YouTube em 480p. Observe a utilização da GPU em contrapartida.
Ainda assim isso tudo é, na minha opinião, um band-aid, um que ainda não resolve esse problema para outros tipos de vídeos web. Eu testei Netflix, Amazon Prime Video, e HBO Max no Pop!_OS, todos funcionam, mas aquele problema do alto uso da CPU ainda acontecerá, pois o yt-dl só funciona para vídeos do YouTube. Também percebi que os vídeos do Prime Video não rodam em Full HD no Linux, pesquisando online descobri que parece ser resultado do tipo de DRM que esse serviço utiliza, que geralmente não se encaixa bem com sistemas Linux. Aliás, caso você use o Firefox como seu navegador padrão, tem um ajuste extra que você tem que deixar ligado nas configurações dele para permitir o DRM do Netflix no Linux. No Chrome eu não precisei fazer isso.
Esse tipo de coisa não seria necessária se a Nvidia adicionasse suporte ao VA-API aos drivers oficiais das suas placas, e se os responsáveis pelos navegadores de Internet no mercado adicionassem suporte para as APIs VDPAU e NVDEC, e se os serviços de streaming parassem de tratar usuários de Linux como criminosos. Infelizmente nessa briga entre empresas e comunidade open source quem se fere é o usuário final.
Considerações finais
Se você é mais u que ficou encantado pelo mundo Linux e está considerando pular acerca para o lado do pinguim, dê uma olhada no Pop!_OS, essa distro é bem mais do que um mero hype e não serve apenas para gamers, ele é a realização de tudo o o Ubuntu foi e deveria continuar sendo: uma distro estável e altamente compatível para usuários novatos. Prepara aquele pen drive bootável e dá uma conferida. Até a próxima!
Se quiser ajudar a manter este blog, a Chave Pix é: pixzenny@gmail.com
Qualquer doação ajuda muito. Obrigado.
Parabéns pelo post meu amigo, realmente muito bom. Eu uso o Zorin OS há uns 2 anos, prefiro usar e trabalhar com linux pelo desenpenho.
ResponderExcluir