4 ms·
What Is BusyBox?
- marlusx 5mo agoThanks for this, been using busybox for ages and never thought about what it actually is.
- tnelsond4 5mo agoInspired by BusyBox 9 years ago I wrote a multicall binary that you rename and manipulate to solve puzzles and learn to use the shell in the process. I should do more with it. https://github.com/tnelsond/learn-linux-commandline https://github.com/tnelsond/learn-linux-commandline
- snvzz 5mo agoBusybox is... a toybox[0] with a more restrictive license. 0. https://github.com/landley/toybox https://github.com/landley/toybox
- maxloh 5mo agoThe correct phrasing would be "Toybox is... a BusyBox with a more permissive license." BusyBox started first. Toybox was started in early 2006 by Rob Landley after he ended his BusyBox maintainership due to a dispute with Bruce Perens, the original creator of BusyBox.[1] [1]: https://en.wikipedia.org/wiki/Toybox https://en.wikipedia.org/wiki/Toybox
- msarnoff 5mo agoBusybox is where I learned the multi-call technique of using argv[0] to simulate multiple commands in a single binary. It works great for Rust binaries, which can get quite large. I had to rewrite some Python utilities (software updater, Wi-Fi network config, etc.) for a very constrained embedded system (64MB RAM) that couldn’t handle Python. So I built them all in a single multi-call binary. I believe `clap` has built-in support for it. Also, Busybox has a lot of stuff built in that you’d never think of. It has a little vi built in. It has the full suite of ‘runit’ process supervisor utilities. And plenty more. It has a Kconfig system (like the kernel) where you can tune exactly which utilities you need and what features you need. Don’t need full output in ps? Turn it off. Don’t need tab completion? Pretty sure you can turn that off too. Always typing ‘dc’ instead of ‘cd’? Just don’t include dc.
- ramses0 5mo ago`busybox httpd` supports low-ceremony `cgi-bin` execution: https://wiki.chumby.com/index.php?title=Using_the_busybox_HTTP_server https://wiki.chumby.com/index.php?title=Using_the_busybox_HT... ...do with that what you will!