Embutils - Uma alternativa aos comandos padrões do seu Linux - Diolinux
Embutils, assim como o "coreutils", do projeto "GNU", é um pacote que possui um conjunto de comandos para a administração do sistema. Como descrito no site oficial do embutils, a maioria do userland tipico do "Unix" vem ou do projeto "GNU", ou da galera do "BSD". Essas fontes são antigas e otimizadas para recursos, mas não para manter seu tamanho reduzido, e agora que os computadores são rápidos o suficiente e possuem muita RAM, implementações se tornam cada vez maiores.
Essa é a maior diferença entre o "coreutils" do GNU e o "embutils", pois o "embutils" é pensado em manter o tamanho final do seu binário bem reduzido mesmo nos tempos atuais, porém mantendo as mesmas características de recursos dos projetos anteriores citados.
Para dispositivos embarcados o "embutils" seria um prato cheio (que é o propósito primário que o "embutils" foi pensado), porém podemos utilizá-lo em desktops e servidores ou sei lá aonde mais.
Eu disse seria? SIM! Dois motivos que o atrapalhariam na adoção para embarcados é que seu desenvolvimento parou já faz quase dez anos e isso poderia gerar desinteresse por parte de desenvolvedores (como também pode ser que não). A "dietlibc" recebeu seu ultimo suporte pelo projeto oficial há cinco anos atrás, porém a biblioteca continua sendo utilizada por outros projetos como as próprias distribuições Debian e Ubuntu. Podemos verificar que a dietlibc ainda consta nos repositórios:
É uma biblioteca incrível que mantem o tamanho final do binário muito enxuto e possui suporte a uma boa quantidade de arquiteturas.
O segundo motivo é que com o declínio da GPL (como pode ser lido clicando aqui), isso pode ser um motivo para afastar o interesse de empresas e projetos.
O "embutils" possui também o comando "uname" assim como o "coreutils" do "GNU" e o como o "toybox" (nenhum dos três compartilham códigos iguais, sendo totalmente escritos do zero) e sua saída do comando "uname" do "embutils" também não consta o termo "GNU/Linux" em nenhuma de suas opções (assim como não consta nas saídas do "toybox" como pode ser lido no artigo Como conheci o Alpine Linux). Gostem de saber disso ou não, mas o termo "GNU/Linux" no comando "uname" do "coreutils" foi uma forma que a FSF fez para se promover e querer que as pessoas chamem o sistema operacional.
Bom, por hora é só e em breve falaremos do conjunto de comandos para o mesmo propósito do sistema operacional "Plan9" 😉