Wydanie minimalistycznego zestawu narzędzi systemowych BusyBox 1.32
Przesłane przez wydanie pakietu BusyBox 1.32 z implementacją zestawu standardowych narzędzi UNIX, zaprojektowanych jako pojedynczy plik wykonywalny i zoptymalizowany pod kątem minimalnego zużycia zasobów systemowych przy ustawionym rozmiarze mniejszym niż 1 MB. Pierwsze wydanie nowej gałęzi 1.32 jest pozycjonowane jako niestabilne, pełna stabilizacja zostanie zapewniona w wersji 1.32.1, która spodziewana jest za około miesiąc. Kod projektu jest rozpowszechniany na licencji GPLv2.
Modułowa natura BusyBox umożliwia utworzenie jednego, ujednoliconego pliku wykonywalnego zawierającego dowolny zestaw narzędzi zaimplementowanych w pakiecie (każde narzędzie dostępne jest w formie symbolicznego dowiązania do tego pliku). Wielkość, skład i funkcjonalność zbioru narzędzi można zmieniać w zależności od potrzeb i możliwości platformy wbudowanej, dla której realizowany jest montaż. Pakiet jest samowystarczalny; po zbudowaniu statycznym za pomocą uclibc, aby stworzyć działający system na jądrze Linuksa, wystarczy utworzyć kilka plików urządzeń w katalogu /dev i przygotować pliki konfiguracyjne. W porównaniu do poprzedniej wersji 1.31, zużycie pamięci RAM typowego zestawu BusyBox 1.32 wzrosło o 3590 bajtów (z 1011750 do 1015340 bajtów).
BusyBox to główne narzędzie w walce z naruszeniami GPL w oprogramowaniu sprzętowym. Software Freedom Conservancy (SFC) i Software Freedom Law Center (SFLC) w imieniu programistów BusyBox, obie za pośrednictwem sąd, i w ten sposób wnioski umowy pozasądowe wielokrotnie skutecznie wpływały na firmy, które nie udostępniają kodu źródłowego programów GPL. Jednocześnie autor BusyBoxa robi co może przedmioty przeciwko takiej ochronie – wierząc, że rujnuje to jego interesy.
W BusyBox 1.32 wyróżniono następujące zmiany:
Dodano nowe polecenie mnie aby uruchomić pomijanie z danego pliku Mim (co przypomina uproszczone narzędzie make);
Narzędzie find dodało opcję „-empty”, aby sprawdzić, czy nie ma pustych plików;
W narzędziu wget rozszerzono limit liczby przekierowań i zaimplementowano obsługę sprawdzania certyfikatów TLS za pomocą ENABLE_FEATURE_WGET_OPENSSL;
Dodano poprawną obsługę listy wzorców (lista_wzorców) do grep oraz dodano opcję „-R” (rekurencyjne przetwarzanie zawartości katalogów);
Rozwiązano problemy, które wystąpiły podczas budowania w Clang 9 i wyeliminowano ostrzeżenia kompilatora;
Zaproponowano dużą liczbę poprawek dla powłok poleceń Ash i Hush, mających na celu poprawę kompatybilności z innymi powłokami. Do funkcji Ash i Hush dodano możliwość automatycznego uzupełniania wbudowanych poleceń za pomocą zakładek. Nowe wbudowane polecenia zostały ustabilizowane w popiele.
Narzędzie fdisk obsługuje teraz partycje HFS i HFS+;
init poprawił obsługę warunków wyścigu po odebraniu sygnałów;
Do narzędzia do wizualnego monitorowania parametrów systemu nmetr dodany format wyjściowy „%NT” (czas wyrównany do zer);
Do zestawu zadań dodano możliwość przetwarzania i wyświetlania listy procesorów (opcja „-c”);
W tar zmieniono zachowanie opcji "-a", która zamiast włączać kompresję "lzma", jest teraz powiązana z autodetekcją po rozszerzeniu pliku;
Udhcpc6 dodał obsługę „bezpaństwowiec» dla DHCPv6 (serwer wysyła tylko parametry sieciowe, bez przypisywania adresu);
nslookup obsługuje teraz przetwarzanie odpowiedzi bez rekordów RR i dodaje obsługę rekordów SRV;
Do brctl dodano nowe polecenia „showmacs” i „showstp”;
Dodano obsługę parametru „serwer przekaźnikowy” do dhcpc;
Dodano ustawienie do syslogd, aby wyświetlać czas z dokładnością do milisekund;
W httpd, podczas pracy w trybie NOMMU, dozwolone jest ustawienie innego katalogu domowego, a opcja „-h” działa podczas uruchamiania procesu w tle;
xargs poprawiono obsługę argumentów ujętych w cudzysłów i zapewniło poprawne zachowanie opcji „-n”;
Również w zeszłym miesiącu odbyła się wydanie Pudełko na zabawki 0.8.3, odpowiednik BusyBox, opracowany przez byłego opiekuna BusyBox i Rozpowszechniane na licencji BSD. Głównym celem Toybox jest zapewnienie producentom możliwości korzystania z minimalistycznego zestawu standardowych narzędzi bez konieczności otwierania kodu źródłowego modyfikowanych komponentów. Według dotychczasowych możliwości Toybox pozostawać w tyle z BusyBox, ale zaimplementowano już 272 podstawowe polecenia (204 całkowicie i 68 częściowo) z 343 zaplanowanych.
Wśród innowacji Toybox 0.8.3 możemy zauważyć:
Dodano nowe polecenia rtcwake, blkdiscard, getopt i readelf;
„make root” zapewnia możliwość stworzenia działającego środowiska startowego opartego wyłącznie na jądrze Linuksa i narzędziach Toybox, które można załadować za pomocą własnego skryptu inicjującego;
Dodano wstępną obsługę modułów z oddzielnymi implementacjami narzędzi, które nie są zawarte w głównym ToyBoxie;
Interpreter poleceń toysh jest gotowy w 80% (nie ma jeszcze obsługi funkcji, historii, zarządzania terminalami, zadań, $((math)), szablonów);
Dodano obsługę dodatkowych opcji do różnych narzędzi, w tym patch, cal, cp, mv, lsattr, chattr, ls, id, netcat i setsid.