domingo, 2 de junho de 2019

Guix

Como sabem, apenas recentemente, em 2018, eu me dei conta realmente do significado do termo software livre. Busquei no sítio oficial do projeto GNU pela lista de sistemas operacionais recomendados pelo projeto e, pela similaridade com o Ubuntu que eu já usava a mais de 7 anos, escolhi o Trisquel. Mas agora está no ar a versão 1.0.1 do GNU Guix, o sistema operacional oficial do projeto GNU.
Uma coisa que eu notei no Trisquel é que muitas ferramentas eu tive que instalar posteriomente. Para exemplificar um pouco da minha experiencia, nas minha busca por informação por programação passei pelo Python, Ruby, C, PHP, Java, ECMAscript, mas nunca cheguei nem perto de encontrar uma menção ao Lisp ou Scheme. Vamos colocar um exemplo de um trecho de código de Python e do Scheme para comparar.
Python
class ToolChooserButton(object):
   
    def __init__(self, button, default_label=''):
       
        self.button = button
        self.default_label = default_label

        self._menu = None
        self._icon = None

        self.reset()

        self.set_sensitive = self.button.set_sensitive

Scheme
(define (must-be-real+ name proc)
  (and proc
       (lambda (x1)
     (if (and (real? x1) (>= x1 0))
         (proc x1)
         (slib:error name x1)))))

Como pode observar, a linguagem Scheme é muito mais limpa do que o Python. Observe que no Scheme, não há o use de =, {}, [], ;, e muitos outros que eu não lembro, você consegue programar apenas com espaços e parenteses. Como os sistemas derivados do Debian/Ubuntu, como o Trisquel, são escritos em Python e o Guix é escrito em Guile (uma implementação em Scheme), fica facil concluir que o Guix é muito mais avançado e tem mais potencial. Em scheme, todas as regras, incluindo orientação a objeto, cabem em dois caracteres, o espaço e o parenteses.

O que esconderam de mim.

Todo o sistema Guix ao ser analizado revela muita coisa. Enquanto eu estava pesquisando sobre upstart, systemd, init, o Guix já tinha o shepherd. Enquanto caminhava pelo snap, flatpak, appimages, a base do sistema Guix chamado de Guix package se mostrava muito mais simples e generoso. Imagine configurar todo o sistema com programação Scheme. Você deve imaginar que é preciso aprender a programar, mas com Scheme, programa não é tão difícil assim e você só precisará aprender isso.

Conclusão

Guix é outra coisa, é o sistema oficial do projeto GNU. Sem a visão de outras corporações como a Microsoft, IBM, Intel. Começar a pensar em sistemas de informática pelo Guix é uma excelente ideia, e ter o Guix no seu notebook também. Eu ainda não instalei o sistema no meu porque ainda tenho algumas dúvidas e limitações. Por incrível que pareca, não ficou claro se o ambiente gráfico está na imagem do ISO. Eu também preciso de um HD externo para salvar meus dados, principalmente porque quero instala-lo no EFI e me parece que para fazer isso, apenas criando uma nova tabela de partição. Mas fora isso, mal posso esperar para ter o Guix no lugar do Trisquel.

Moto E13 O melhor dos mais baratos

Nada como uma bateria desgastada de um smartphone que não tem mais suporte para me fazer comprar o smartphone novo. Não dava para esperar dá...