On Sat, Nov 12, 2011 at 02:32:09PM +0100, Thomas Bächler wrote:
Am 12.11.2011 03:55, schrieb Dave Reisner:
Providing this means we no longer need blkid for FS detection, as mount will do this for us. Adds a slight bloat to the image, in exchange for a huge convenience. Messaging is changed to assume that /bin/mount will provide useful feedback for us on failure.
Once we start going down this road (cp, mount, ...), wouldn't it be better to simply drop busybox?
Hmm... we're probably close to that point. In terms of size for the tradeoff, we'd need (at a minimum) the following binaries to replace busybox: KB /bin/bash 733896 /bin/mknod 31176 /bin/sleep 27048 /bin/mkdir 47688 /usr/bin/env 27064 /sbin/switch_root 24648 /bin/grep 134600 <-- id prefer to get rid of this /usr/bin/stat 72456 /bin/umount 265568 Someone will throw tomatoes at me for using Bash, but Dash sucks, and it makes a truly awful interactive shell. Additionally, a lot of users would end up bringing in: /usr/bin/setfont 39800 /usr/bin/kbd_mode 10400 cat, sed, rm, and cut are used in crypt/lvm/mdadm hooks. I can refactor some of that out, but that seems to me like it's liable to break hooks that I don't know about. I guess they can BYO via the BINARIES= declare in the build function, but let's just consider having them as core for funzies: /bin/cat 47784 /bin/sed 69184 /bin/cut 39432 /bin/rm 55912 shutdown features necessitate cp /bin/cp 121880 To make the ramfs useful for troubleshooting, add in: /bin/ls 105832 /bin/vi 228096 Ditching busybox and adding in all of this brings in an additional 1.6MB before library dependencies... /lib/libacl.so.1 31856 /lib/libattr.so.1 17248 /lib/libcap.so.2 17096 /lib/libdl.so.2 14704 /lib/libncursesw.so.5 378816 /lib/libpcre.so.0 371160 <- belongs to grep /lib/libreadline.so.6 326762 ...an additional 1.1MB. I point out that we should get rid of grep because awk from FreeBSD is roughly the size of the grep binary, does more, and has zero dependencies beyond libc. My pacman-dev hat wants this in the repos anyways for easier testing of makepkg. I don't have a problem with this -- in the end it'll make my life easier. dave