lansarea pachetului cu implementarea unui set de utilitare UNIX standard, prezentate sub forma unui singur fișier executabil și optimizate pentru un consum minim de resurse sistemice, cu o dimensiune a pachetului de sub 1 MB. Prima versiune a noului ramificări 1.32 este marcată ca instabilă, stabilizarea completă va fi asigurată în versiunea 1.32.1, care este așteptată în aproximativ o lună. Codul proiectului este distribuit sub licența GPLv2.
Caracterul modular al BusyBox permite crearea unui singur fișier executabil unificat, care conține un set arbitrar de utilitare implementate în pachet (fiecare utilitar fiind disponibil sub forma unui link simbolic către acest fișier). Dimensiunea, conținutul și funcționalitatea colecției de utilitare pot fi variate în funcție de nevoile și capacitățile platformei încorporate pentru care se realizează compilarea. Pachetul este autonom, iar pentru a crea un sistem funcțional deasupra nucleului Linux, în urma compilării statice cu uclibc, este necesar doar să se creeze câteva fișiere de dispozitive în directorul /dev și să se pregătească fișierele de configurare. Comparativ cu versiunea anterioară 1.31, utilizarea memoriei RAM pentru compilarea tipică a BusyBox 1.32 a crescut cu 3590 octeți (de la 1011750 la 1015340 octeți).
BusyBox este instrumentul principal în lupta împotriva încălcării GPL în firmware-uri. Organizațiile Software Freedom Conservancy (SFC) și Software Freedom Law Center (SFLC) au acționat în numele dezvoltatorilor BusyBox atât prin , cât și prin acorduri legale, exercitând constant presiune asupra companiilor care nu oferă acces la codul sursă al programelor GPL. În același timp, autorul BusyBox se opune în mod vehement În versiunea BusyBox 1.31 se evidențiază următoarele modificări:
În versiunea BusyBox 1.32 sunt evidențiate următoarele modificări:
- A fost adăugată o nouă comandă pentru a rula scripturi dintr-un fișier Mimfile specificat (asemănător unei versiuni reduse a utilitarului make);
- În utilitarul find a fost adăugată opțiunea „-empty” pentru verificarea fișierelor goale;
- În utilitarul wget a fost extins limita de redirecționări și a fost implementată suportul pentru verificarea certificatelor TLS în cazul utilizării ENABLE_FEATURE_WGET_OPENSSL;
- În grep a fost adăugată suportul corect pentru lista de șabloane (pattern_list) și a fost adăugată opțiunea „-R” (prelucrare recursivă a conținutului directorului);
- Au fost rezolvate problemele apărute la compilarea cu Clang 9 și au fost eliminate avertizările compilatorului;
- O mare porțiune de corecții a fost propusă pentru shell-urile ash și hush, având ca scop îmbunătățirea compatibilității cu alte shell-uri. În ash și hush a fost adăugată funcționalitatea de auto-completare a comenzilor încorporate prin apăsarea tastei TAB. În ash au fost stabilizate noile comenzi încorporate.
- În utilitarul fdisk a fost adăugat suportul pentru partițiile HFS și HFS+;
- În init a fost îmbunătățită gestionarea stării de competiție la primirea semnalelor;
- În utilitarul pentru monitorizarea vizuală a parametrilor sistemului a fost adăugat formatul de ieșire „%NT” (timp aliniat cu zerouri);
- În taskset a fost adăugată capacitatea de a procesa și afișa lista CPU (opțiunea „-c”);
- În tar s-a modificat comportamentul opțiunii „-a”, care, în loc să includă compresia „lzma”, este acum legată de autodetectarea după extensia fișierului;
- În udhcpc6 a fost adăugat suport pentru modul „” pentru DHCPv6 (serverul oferă doar parametrii de rețea, fără alocarea unei adrese);
- În nslookup a fost asigurată procesarea răspunsurilor fără înregistrări RR și a fost adăugat suport pentru înregistrările SRV;
- În brctl au fost adăugate comenzi noi „showmacs” și „showstp”;
- În dhcpc a fost adăugat suport pentru parametrul „relay server”;
- În syslogd a fost adăugată o opțiune pentru a afișa timpul cu precizie de milisecunde;
- În httpd, în modul NOMMU, a fost permisă setarea unui alt director de bază și a fost asigurată funcționarea opțiunii ‘-h’ la lansarea unui proces în fundal;
- În xargs s-a îmbunătățit procesarea argumentelor încrustate în ghilimele și s-a asigurat comportamentul corect al opțiunii „-n”;
- Au fost corectate neajunsurile din utilitarele grep, top, dc, gzip, awk, bc, ntpd, pidof, stat, telnet, tftp, whois, unzip, chgrp, httpd, vi, route.
În plus, luna trecută lansare , un analog al BusyBox, dezvoltat de fostul menținător al BusyBox și sub licența BSD. Principalul scop al Toybox este de a oferi producătorilor posibilitatea de a folosi un set minimalist de utilitare standard fără a deschide codurile sursă ale componentelor modificate. Din punct de vedere al capacităților, Toybox deocamdată de la BusyBox, dar deja au fost implementate 272 de comenzi de bază (204 complet și 68 parțial) din 343 planificate.
Printre noutățile Toybox 0.8.3 se numără:
- Au fost adăugate comenzi noi rtcwake, blkdiscard, getopt și readelf;
- În „make root” a fost asigurată capacitatea de a crea un mediu bootabil de lucru bazat doar pe kernelul Linux și utilitarele Toybox, care poate fi încărcat cu un script init propriu;
- A fost adăugată suport inițial pentru module cu implementări separate ale utilitarelor care nu fac parte din compunerea principală Toybox;
- Interpreterul de comenzi toysh a fost adus la o stare de pregătire de 80% (deocamdată lipsesc suportul pentru funcții, istorie, gestionarea terminalului, job-uri, $((math)), șabloane);
- A fost adăugat suport pentru opțiuni suplimentare în diverse utilitare, inclusiv patch, cal, cp, mv, lsattr, chattr, ls, id, netcat și setsid.
Sursa: opennet.ro
