- Linux komut setini tek bir çalıştırılabilir dosyada birleştiren hafif bir multicall binary aracı; BusyBox’a alternatif olarak geliştirilmiş açık kaynaklı bir yardımcı yazılım
- Yalnızca tek bir çalıştırılabilir dosyayı (
toybox-x86_64) indirip çalıştırarak, echo, cp, mv, cat gibi temel komutları tek bir binary içinde sunar
- POSIX-2008 ve LSB 4.1 standartlarıyla uyumludur; hızlı çalışma, sade yapı ve standartlara uyum vurgulanır
- Projenin asıl temel hedefi, Android’i tamamen self-hosting bir ortama dönüştürmek olup AOSP’nin Android üzerinde doğrudan derlenebilmesi için tasarlanmıştır
- Google bu yaklaşımı benimseyerek 2015’te Android Marshmallow’dan itibaren Toybox’ı AOSP’ye entegre edip varsayılan olarak dahil etti
- BusyBox, GPLv2 lisansı nedeniyle Android ile uyumlu değilken; Toybox, Android ile uyumlu BSD lisansı ile yeniden yazıldı
- GNU araçlarına bağımlılığı kaldırarak daha şeffaf ve yeniden üretilebilir bir derleme ortamı sunmayı hedefler
- Toybox, “en az dört bileşenle kendi kendini derleyebilen bir sistem” hedefiyle geliştirilir
- POSIX komut seti, derleyici, C standart kütüphanesi ve çekirdek
- Bu yapı sayesinde yeniden üretilebilir bir temel sistem oluşturulabilir; ardından editör (vi), izleme araçları (top), kabuk geçmişi gibi bileşenler eklenerek günlük kullanıma uygun bir ortama genişletilebilir
toybox komutu üzerinden alt komutlar çağrılabilir veya her komut adı için sembolik bağlantı oluşturularak normal komutlar gibi kullanılabilir
- Linux çekirdeğiyle aynı derleme yapısını (
make menuconfig; make; make install) izler ve .config dosyası üzerinden dahil edilecek özellikler seçilebilir
- Cross-compilation ortamını tam olarak destekler; ARM gibi x86 dışı hedefler için statik binary derlenebilir
scripts/mkroot.sh kullanılarak Toybox tabanlı minimal bir Linux sistemi oluşturulabilir
make root ile kök dosya sistemi oluşturulduktan sonra chroot çalıştırılır
qemu ve cross-compiler birlikte kullanıldığında kendi kendine önyüklenebilen mini bir Linux ortamı kurulabilir
- Yerleşik yardım sistemi:
toybox help <komut> ile her komutun açıklaması görülebilir
1 yorum
Kullananlar var mı, faydalı mı?