[Toybox] mkroot works again, pending release.

Rob Landley rob at landley.net
Tue Oct 20 17:12:50 PDT 2020



On 10/20/20 5:23 PM, Patrick Oppenlander wrote:
> On Tue, Oct 20, 2020 at 10:58 AM Rob Landley <rob at landley.net> wrote:
>>
>> I got toysh implementing all the bits that mkroot's init script needs, so I
>> expect to cut a release in the next couple days. There's still a zillion
>> dangling threads but I should be able to park it for now.
>>
>> If anybody wants to holler about something I should fix now, this would be a
>> good time. I'm back in tokyo working on $DAYJOB again, and am likely to down
>> tools on toybox after the release for at least a couple months.
>>
>> I note that except for a couple large holes (lack of $((math)) and function()
>> support, haven't finished trap/signal/jobs, needs command line editing and
>> history) toysh is... sort of working now? Several known bugs (test suite
>> failures), but it's actually starting to be actually run real scripts. Needs
>> auditing for memory leaks, and the largest script I've thrown at it _is_ the
>> mkroot init, but... it's advanced from "don't bother" to "object of curiosity".
>>
>> Right now, useful bug reports would come in the form of "thing I could add to
>> tests/sh.test and get to later", and keep in mind I've got...
>>
>>   $ wc sh.tests
>>   845  3791 20673 sh.tests
>>
>> One or two of those already, not yet properly formatted into runnable regression
>> tests. (And one of the current sh.test entries HANGS because a
>> subshell-plus-redirection test fails to hand off a filehandle properly and we
>> wait forever reading from nothing, so I need to teach tests to time out...)
>>
>> Rob
> 
> Hi Rob,
> 
> first, thanks for all the hard work!
> 
> I had a go at using toysh instead of busybox ash and immediately ran into this:
> 
> % ./toybox sh
> $ for i in $(./toybox); do echo $i; done
> $

It ran for me?

  $ ./toybox sh -c 'for i in $(./toybox); do echo $i; done' | wc
    211     211    1355

> That seems to start an interactive subshell somehow (takes two ^D's to
> quit) instead of looping.

Hmmm, how do I reproduce this...

Rob



More information about the Toybox mailing list