Acho o Linus Torvalds genial. Não que seja um cara que criou um kernel, mas é um cara que criou um sistema de crontrole de versão de software, o GIT, em 2 semanas. Ou seja, ele é genial.
E ele apareceu na DebConf 14, que ocorreu faz poucas semanas, em Portland, EUA, pra falar um pouco. Foi uma sessão de perguntas e respostas.
O que esperar de alguém que criou o kernel de um sistema operacional? Perguntas técnicas de altíssimo nível? Um semi-deus falando? Escovação de bits?
Pois o grupo de desenvolvedores de Debian (ou seria "empacotadores") mostrou que não. De perguntas técnicas a perguntas idiotas. Sim, idiotas. Debian é um projeto de distro aberta. Isso não significa uma supremacia em inteligência. Tem muita gente que se preocupa com "comunidade", com o Linus chamando de idiota alguém que mereça.
Mas vamos falar um pouco sobre tudo que foi dito durante a DebConf 14. Claro que não na ordem em que foi apresentado, mas na que me lembro (não, não vou ficar vendo o vídeo novamente e escrevendo notas sobre o mesmo pra descrever aqui. Deal with it).
Linus foi perguntado e responde sobre o famigerado "systemd". É bom? É ruim? Eu concordo muito com ele, que é uma grande inovação. Endereçou vários aspectos que eram deficitários no Unix por mostivos históricos de design. É melhor? Essa é a grande pergunta. Essa inovação trouxe junto uma complexadade que quebrou com o velho e bom KISS (Keep It Simple Stupid). Mas sempre existe o dilema do "manter o velho" ou "quebrar tudo e ir pro novo". No momento, é algo interessante, que parece promissor, mas ainda falta muita coisa pra melhorar, como um tempo de resposta menor na lista de bugtrack.
Eu pessoalmente não estou convencido da melhoria do systemd. Boot mais rápido? Meu laptop reboota com um kernel novo, sincronizado via git, a cada 30-45 dias. Boot rápido realmente não importa pra mim nesse caso.
Esse foi um ponto interessante, pois ele deixou claro que não usa, nem pretende usar. Não que Debian seja bom ou ruim pra ele, mas ele basicamente usa um sistema de desenvolvimento de kernel. Isso significa um sistema que depois da instalação esteja pronto pra seu uso, sem muita firula, nem ambientes gráficos dos melhores. Apenas gcc e kernel. Uma coisa que o incomoda é o fato de precisar gerar um pacote DEB pra ter o kernel em seu lugra pra testar (provavelmente se referindo ao kernel-package). Para ele, uma distro tem de prover um sistema rápido para usar "make; make install" e poder testar.
Faz anos que não uso "make; make install" pra instalar o kernel. Sempre uso o kernel-package pela facilidade de ter um pacote pronto e gerenciável. Então não sei nem o que dizer sobre essa reclamação do Linus. Claro que o uso dele é bem específico.
Linus disse que ainda sonha com a dominação do Linux no Desktop, assim como já domina os ambientes de servidor e de mobile. Mas que nesse ponto não depende do kernel, mas das distros. Elas que preparam o sistema pros usuários. E disse que os exemplos que ele enxerga com futuro nessa linha são os chrome books (chrome OS) e... Ubuntu. Qual usuários ele se refere? Ele deixa claro que não os usuários como nós, que já usam Linux, mas os iniciantes como crianças, idosos, etc, ou seja, pessoas que não são da área de TI. Esse são o foco que as distros têm de ter pra conseguir dominar o Linux no desktop.
Outro ponto que comentou foi em relação à steam, que a mesma está trazendo um visão de Linux desktop para os usuários. Infelizmente isso exige que ela distribua grandes pedaços de binários (linkados estaticamente) por conta da grande variedade de distros, cada uma com sua visão de sistema. Essa diversidade, por ser um ponto forte por um lado, é um ponto fraco no ponto de distribuição de binários diretamente pros usuários.
Nesse ponto ele comenta que decidiu não ir pelo caminho da GPLv3 pelo fato dela "exigir" a liberdade de quem usa o código. A GPLv2 permite uma troca de liberdades: eu permite que use meu código, se o melhorar, peço que devolva essa melhoria. Então a GPLv2, ao seu ver, é muito mais flexível e perto de uma licença BSD de uso. Já a GPLv3 exige que ao usar um código livre, o mesmo seja disponibilizado. Esse pequeno argumento muda o conceito de trocas, que tanto Linus preza. Então preferiu manter com a GPLv2 mas foi enfático em dizer que a GPLv3 não é ruim, mas não se adequa ao que ele quer pro kernel Linux como modelo de desenvolvimento.
Houve uma certa reclamação quanto a FSF e a forma que mudou a GPLv2 pra GPLv3, mas eu acho melhor deixar essa parte da discussão as puritas dos assuntos de liberdade. Por enquanto sigo a recomendação do Linus que disse que se quer falar de liberdade, melhor a EFF que a FSF.
É conhecido o fato do Linus Torvalds ter uma certa aversão a aparecer em público. O motivo? Ele não é uma das melhores pessoas do mundo. Não luta contra fome ou coisas do tipo. É um geek, um nerd, e como tal, tem seus momentos de explosão temperamental. Infelizmente esses momentos ficam gravados em listas e mails. Quando estão pessoalmente com ele, muitas das pessoas da audiência o julgam por seu comportamento, esperando dele algum tipo de de atitude mais "magnânima", mais em "pról da comunidade". Mas somos todos humanos, demasiados humanos, já dizia Nietzche.
Na DebConf, que não tem uma comunidade especificamente técnica, mas alguns desses goiabas que gostam do assunto político ao invés do técnico, então isso não fugiu do roteiro. Como sempre, um tipo de "saia justa" pra ele, que se saiu muito bem (ao meu ver) com um "respeito não é algo que se ganha, mas que se conquista". E isso é especialmente quando alguém tenta mexer no kernel que ele criou.
Linus comentou sobre outras coisas, como SELinux, que usa um framework de segurança no kernel (e que de acordo com ele torna tudo mais lento), mas o melhor é assistir ao vídeo.
Seguindo os artigos trabalhando de home-office e trabalhando de casa - atualização de 2021, aqui vai mais uma atualização.
Eu decidi investir num teclado novo. Mecânico, claro. Decidi não ter mais um full size, que tem o teclado numérico, mas num um pouco mais curto. Depois de muito olhar e pesquisar, finalmente decidi pegar um Keychron C1 com brown switch.
Fiz um vídeo do unboxing onde tem até uma comparação de som com o teclado que usava anteriormente, que é do tipo blue switch.
Mas nem tudo foi uma maravilha em Linux.
Pra fazer o teclado funcionar corretamente eu precisei usar o modo Mac. No modo Windows, de jeito nenhum eu consegui fazer funcionar as teclas de funções. Mesmo no modo Mac eu precisei ajustar uns parâmetros pra tudo dar certo.
Precisei criar o arquivo /etc/moprobe.d/hid_apple.conf da seguinte maneira:
echo "options hid_apple fnmode=0" >> /etc/moprobe.d/hid_apple.conf
Com isso o kernel reconhece o teclado e aplica a configuração correta. Então as teclas de função F1-F12 são o padrão e preciso apertar a tecla "fn" pra usar as funções.
Existem várias opções de troca de firmware pra mudar cores, etc, mas confesso que não é algo que eu realmente pense em fazer. Pra mim basta ser um teclado mecânico confortável, o que realmente é, e ter um teclado luminoso (às vezes trabalho no escuro e isso ajuda).
Como reinstalei meu laptop acabei percebendo que dica de cima faltaram algumas coisas.
Primeiro que pra ativar manualmente o teclado, basta rodar o seguinte comando como root:
echo 0 >> /sys/module/hid_apple/parameters/fnmode
depois que ao criar o arquivo no modprobe, é preciso também re-gerar o arquivo de initram com o comando:
update-initramfs -u -k all