[Toybox] runcon requires CONFIG_TOYBOX_NORECURSE=y

enh enh at google.com
Fri Jan 22 09:25:23 PST 2016


On Fri, Jan 22, 2016 at 9:13 AM, Rob Landley <rob at landley.net> wrote:
> On 01/20/2016 11:21 PM, enh wrote:
>>> Over in my Aboriginal Linux project I've had my nose recently rubbed in
>>> the need to start work on toysh (hush is crap, ash doesn't support
>>> nommu, and bash 2.05b from the dawn of time is coming to the end of its
>>> usefulness), and one of the things the recent utf8 fontmetrics stuff
>>> applies to is command line history, so that can of worms is likely to
>>> get opened this year. (I should do test.c first...)
>>
>> i should probably clarify: mksh is fine as a shell. it just doesn't
>> care about cleaning up on exit.
>
> Indeed, but I need toysh anyway.
>
> I don't intend to try to convince android to move off of mksh. I just
> hope to provide such a drastically _better_ shell that other people do. :)
>
> I expect it to take awhile, and what I really need are regression tests
> against every corner case of both bash and mksh...
>
>>> As for toybox stomping other package's binaries, I'd like it to use
>>> --remove-destination but I'm not _quite_ sure that's supported on all
>>> the systems it would be installing on? (It's a nonstandard extension. I
>>> suppose I could do rm then cp...)
>
> The downside of which is that if you install toybox over itself on a
> system that only has toybox when it does an "rm cp" it then won't have a
> cp command in the $PATH to put it back.
>
> (Yes, inadvisable to do at the best of times. And admittedly the current
> one would fail with "executable busy" if you try to overwrite a running
> file, but it wouldn't leave you hosed either...)
>
> Really I'd like to use the "install" command. It's not posix, but won't
> stomp hardlinks.
>
>> i think they did that to themselves. looking at their Android.mk,
>> they've removed my hard-coded list of symlinks with a call to toybox
>> on the host to list all the compiled-in toys. (which is all they
>> actually need to build on the Mac.) i don't do this (and don't have
>> any intention of doing it) because it's useful to have things in
>> toybox without making them directly available. another layer of
>> "pending", if you like :-)
>
> I'm promoting three of the commands you _are_ using in pending this
> release cycle. Trying to get ahead on that...

don't just look at this list:

    toys/pending/dd.c \
    toys/pending/expr.c \
    toys/pending/lsof.c \
    toys/pending/more.c \
    toys/pending/netstat.c \
    toys/pending/route.c \
    toys/pending/tar.c \
    toys/pending/tr.c \
    toys/pending/traceroute.c \

make sure you look at what we actually link to. dd and traceroute
still come from BSD and iputils respectively. i may as well stop
building toybox traceroute because i don't think the kernel networking
folks have any interest in moving off iputils.

actually, the "two layers of pending" is more interesting than that...
you don't consider grep pending, for example, but my notes have both
missing features on your side, and C library stuff for me to
investigate on our side:

   grep --- missing -A, -B, -C, color. compare performance with BSD
grep before switching; BSD grep has work arounds for performance in
the BSD regex implementation.

but dd and grep are low priorities on our side because we've long had
high-quality implementations of those anyway. ps is the
highest-profile tool that still needs replacement.

> Rob



-- 
Elliott Hughes - http://who/enh - http://jessies.org/~enh/
Android native code/tools questions? Mail me/drop by/add me as a reviewer.

 1453483523.0


More information about the Toybox mailing list