[Toybox] https://ossna19.sched.com/event/PTag/toybox-vs-busybox-rob-landley-hobbyist

enh enh at google.com
Tue Aug 27 09:20:21 PDT 2019


On Tue, Aug 27, 2019 at 9:03 AM Rob Landley <rob at landley.net> wrote:
>
> On 8/26/19 2:09 PM, enh wrote:
> > On Mon, Aug 26, 2019 at 11:54 AM Rob Landley <rob at landley.net> wrote:
> >>
> >> On 8/26/19 11:09 AM, enh wrote:
> >>> i did wonder what a rob landley pdf would look like :-)
> >>
> >> Hey, http://landley.net/aboriginal/downloads/presentation.pdf was created with
> >> apple keynote and everything. :P
> >>
> >> I've _done_ fancy slides, there's just never seemed to be much point? The talks
> >> with slides got _less_ engagement.
> >>
> >> I usually do an outline ala https://landley.net/talks/ohio-2013.txt and this
> >> time it was halfway between "slide blocks" and outline blocks, didn't decide
> >> which way to go until too late. :P
> >>
> >>> one entry missing from the timeline is whoever came up to me in the
> >>> corridor at the Plumbers conference in Duesseldorf and said "the work
> >>> you're doing to switch to some of the BSD tools for /system/bin is all
> >>> very nice, but why don't you just use toybox?" to which my response
> >>> was "what's toybox?". (being in the right time at the right place is
> >>> usually 90% of the battle, and most histories of most things pretend
> >>> that they were bound to happen anyway.)
> >>
> >> I know, I ran out of time putting it together.
> >>
> >> I remember you mentioning it in the ADB thing. Alas I dunno how to link to a
> >> specific _time_ in an MP3 from a URL. (I also wanted to dig up the android bug
> >> thread about adding toybox that we first communicated through, but ran out of time.)
> >>
> >>> the most important factor after chance from my side was that -- unlike
> >>> most OSS at the time, especially GPL stuff because of the kind of
> >>> person that tends to attract -- was that when i sounded you out you
> >>> didn't say "fuck Android, why don't they switch to the GPL and use
> >>> glibc?", you said (and i paraphrase and maybe project at the same
> >>> time) "i might not agree with all the choices, but you can't change
> >>> the past, and you can't argue with 2 billion installs". which might
> >>> seem obvious, but you would not believe the trouble we've had with
> >>> upstreaming patches.
> >>
> >> Indeed.
> >>
> >>> -*-
> >>>
> >>> unrelated, fwiw since you mention the busybox subdirectory mess, i
> >>> find toybox's posix vs other vs lsb etc to just be a smaller version
> >>> of the same "where did you hide it, and why should i care?" busybox
> >>> problem. (and the cause of my xargs -o patch, which i'll now go and
> >>> ping you on...)
> >>
> >> If you want to throw 'em all into a single directory, I don't particularly mind.
> >> I just thought it would be overwhelming.
> >
> > to whom?
>
> Good point.
>
> >> The infrastructure doesn't care, it's a flat command namespace anyway.
> >>
> >>> personally i could see a stronger argument for a split along the lines
> >>> of posix vs linux vs android vs (theoretically at least) bsd (and/or
> >>> darwin)... "where is this likely to work?" seems to have _some_ value.
> >>> certainly more than "where did this come from?".
> >>
> >> Except then the same commands show up in multiple categories, and menuconfig
> >> isn't really set up to do that. (Plus it's hard to know when you're done. Start
> >> at the beginning, each thing occurs once, stop at the end.)
> >
> > well, i meant _exclusively_. but, yeah, you're right that we'd need at
> > least one more directory for "not posix, but also portable".
>
> I miss when posix was actually sorta functional. Before they yanked tar because
> Jorg Schilling told them Solaris's Pax was so clearly the future and what the
> Linux people were doing was obviously _wrong_ and they'd come around if posix
> said so.
>
> Spoiler: nope. And Oracle's a Linux distro vendor now. I just typed "solaris"
> into google and the first five hits were about three films made in 1972, 1976,
> and 2002. The oracle product is the sixth hit.
>
> >>> ("lsb" vs "other"
> >>> being the most annoying, because who knows and who cares?)
> >>
> >> It mattered a lot more in 2006. The FSG didn't merge with OSDL to form the Linux
> >> Foundation until 2007, and they didn't really start to destroy the LSB until 5
> >> years or so after that.
> >>
> >> But yeah, that division is no longer relevant. I can remove it if you like.
> >
> > sgtm.
> >
> >>> but i still
> >>> think putting that in the "Config.in" stuff at the start of the file
> >>> makes more sense: "depends on <some linux feature/syscall>". (and this
> >>> is only for the "inherent" stuff like dmesg. not the "accidental"
> >>> stuff like "the way we happen to have implemented something, which we
> >>> can hide in portability.[ch]".)
> >>
> >> Except almost all that stuff is one command at a time. Is "eject" still
> >> relevant? What permissions does "lsusb" need to run?
> >>
> >> Hmmm... Which _might_ be relevant is:
> >>
> >> $ grep TOYFLAG_NEEDROOT toys/*/*.c | sed 's/.*TOY(\([^,]*\),.*/\1/' | xargs
> >> freeramdisk insmod login reboot halt poweroff rmmod swapoff swapon vconfig crond
> >> groupadd addgroup groupdel delgroup openvt deallocvt sulogin useradd adduser
> >> userdel deluser
> >> $ grep TOYFLAG_STAYROOT toys/*/*.c | sed 's/.*TOY(\([^,]*\),.*/\1/' | xargs
> >> mount nfsmount passwd umount taskset bootchartd crontab syslogd traceroute
> >> traceroute6 iotop
> >>
> >> Which is more or less the historical /bin vs /sbin split I believe? (Haven't
> >> checked those annotations...)
> >
> > but like you say, that's historical too. (and if you do want that
> > subset, you can still grep.)
> >
> >> But again, if we're going to fiddle with what's there, what's bad about a flat
> >> namespace?
> >
> > yeah, that's where i always end up whenever i'm thinking about this. i
> > can think of several advantages and no real disadvantage.
> >
> >> (Probably a conversation to have on the list rather than private email.
> >
> > if you want to announce the erection of a new bikeshed... :-)
>
> Oh I'd just do it, I just prefer to keep design discussions out in the open for
> historical reasons. :)
>
> Do you mind if I cc: this reply to the list?

you already did, but for the record "fine by me" :-)

> >> I lean
> >> towards "dump it all in a single flat namespace", modulo pending would still be
> >> a subdir, and global options. So maybe 3 subdirs total: commands, pending, options.)
> >
> > what goes in options in that world?
>
> The current "toybox global settings" menu.
>
> >> Rob
>
> Rob


More information about the Toybox mailing list