Lançado toybox 0.7.6

toybox 0.7.6
toybox 0.7.6

Apesar que venho falando bastante sobre o toybox, para quem não sabe do que se trata toybox é um terminal de comandos desenvolvido especificamente para Linux e hoje está presente no android desde a versão MarshMallow.

Recentemente fiz um vídeo onde demos uma olhada no toybox onde explico como ele foi criado, como configurá-lo, compilá-lo e utilizá-lo.


Na sexta feira (24/02/2018) foi lançada a versão 0.7.6 deste terminal que simplesmente me encanta especificamente pelo seu tamanho (quase quatro vezes menor que o Bash), saída de comandos (bem mais clara que a do Bash) e sua licença que é de domínio publico.

Eu baixei e analisei esta nova versão e a primeira coisa que posso notar é que podemos fazer uma configuração padrão usando tanto o make defconfig mostrado no vídeo quanto o popular "./configure". Fiz o teste com as duas opções e funcionou tudo OK

Teste com o ./configure e funcionando bem
Teste com o ./configure e funcionando bem


Teste com o make defconfig e também funcionando bem.
Teste com o make defconfig e também funcionando bem.

Em questão de tamanho final pós-compilação, ambos possuem o mesmo tamanho (320KB). Mas quando de se trata de comandos, seria um sufoco analisar um a um para saber o que mudou olhando desta maneira:

Comparando os comandos entres as versões 0.7.5 e 0.7.6 do toybox de uma forma bem ilógica
Comparando os comandos entres as versões 0.7.5 e 0.7.6 do toybox de uma forma bem ilógica

Ok, então resolvi dar uma filtrada usando o comando wc (word counter) com a opção -w (filtrar por quantidade de palavras) e me deparei com isso. A unica mudança foi um comando:

Comparando os comandos entres as versões 0.7.5 e 0.7.6 do toybox de forma filtrada
Comparando os comandos entres as versões 0.7.5 e 0.7.6 do toybox de forma filtrada

Mas essa é a unica diferença? Um comando?
A verdade é que não. Dentre as mudanças estão correções nos comandos iconv, logger, setfattr e gzip/gunzip/zcat. Os comandos stty e fmt que estavam em Pendentes foram adicionados como funcionais.

O comando adicinado foi o crc32 que é utilizado para checksum de cada arquivo:

Comando crc32 no toybox 0.7.6
Comando crc32 no toybox 0.7.6
O comando cut recebeu uma reescrita completa tendo adicionado suporte a multiplos ranges, suporte a caracteres utf8/unicode, e novas opções -CDFO. utilize -C para medir colunas ao invés de caracteres (para o dobro de largura de chars), e "cut -DF 3-5" para selecionar palavras (assim como no "awk '{print $3 $4 $5}'").

Adicionaram as seguintes opções aos comando (correções também foram feitas ao comando top),:
  • top -m
  • iotop -H
  • iconv -c
  • Correções no ps -T 1234 para exibir threads pertencentes a qual PID,
Houveram melhorias também na identificação de arquivos executáveis (e acionaram sh/frv fdpic, bpf e novos identificares microbalze). O blkid agora exibe somente LABEL= quando não está em branco.

A equipe do android adicionou df -i, uptime -p, time -v, and xxd -i -ri, corrigiram id -G para somente a saída do grupo de IDs, corrigiram a combinação xargs -0 -n, adicionaram find -exec + obey ARG_MAX (como no xargs), fizeram killall matar scripts, corrigiram um off no pidof que poderia causar um falso positivo em nomes com 15 caracteres, adicionaram testes ao gzip/gunzip/zcat tests, e o comando file a identificar mais arquivos (ogg, TrueType font, LLVM bitcode, PEM certs, e executáveis PE). O getprop/setprop do android agora permite ro.

Houveram muitas outras melhorias nos comandos, mas aqui estão algumas. Baixem o toybox (seja em forma binária ou de código fonte) e bora testar e ajudar a comunidade ;)

Fiquem também com a história do toybox:


Analista (bilíngue) de sistemas, redator do blog Diolinuxtradutor da distribuição Funtoo e parte da distribuição IPFire, do manual chamado Caixa de Ferramentas do UNIX e do manual Zsh Lovers. Dono dos canais e blogs Toca do Tux e Resenha Nerd:

Compartilhe isso

Leia outros posts

Próximo post
« Próximo post
Post Anterior
Próximo Post »

Compre na imago brinquedos

Compre na imago brinquedos
Utilize o cupom de desconto TOCADOTUX e ecnomize 5% na sua compra