6 ms·
It doesn't support a lot of very basic things, like variables $ TEST=1 $ echo $TEST $TEST Interestingly, in the example they show: $ cat READ
by chei0iaV 10y ago
It doesn't support a lot of very basic things, like variables
$ TEST=1
$ echo $TEST
$TEST
Interestingly, in the example they show:
$ cat README | while read L; do echo "README: $L"; done
...and yet:
$ read L
/usr/bin/read: command not found
$ while true; do break; done
/usr/bin/while: command not found
$ echo "quotes"
"quotes"
Seems like a horribly backwards approach to implementing a posix shell...
- userbinator 10y agoThis is apparently the source code for it: https://github.com/plasma-umass/browsix/blob/master/src/bin/sh.ts https://github.com/plasma-umass/browsix/blob/master/src/bin/... It doesn't do much, and certainly does not qualify as being unmodified existing code (which is what this whole system is supposed to be able to run as one of its benefits.)
- nteon 10y agoThat was our first shell we used for debugging before we had emscripten working. The shell currently used in the demo is dash, compiled with emscripten: https://github.com/plasma-umass/browsix/blob/master/src/dash.js https://github.com/plasma-umass/browsix/blob/master/src/dash... Which ends up in the build through our gulpfile: https://github.com/plasma-umass/browsix/blob/master/gulpfile.js#L205 https://github.com/plasma-umass/browsix/blob/master/gulpfile...
- ris 10y agoSurely one can just compile bash for browsix though?
- ori_b 10y agoProbably not. If you read the source, This thing has no real idea of processes.
- deleted 10y ago[deleted]
- nteon 10y agoThat example is actually running dash - the Debian Almquist shell. The weirdness (and reason that cd + setting variables doesn't work) is because whenever you type a command in, it executes: $ dash -c '$COMMAND' Rather than having a long-running shell process listing to standard in. We plan to fix this and implement a full TTY subsystem in the next month or so.