[comp.sys.atari.st] MiNT sh

david@doe.utoronto.ca (David Megginson) (03/11/91)

I posted an enquiry to comp.sources.wanted about the sources to the
PD Bourne shell which the PD ksh was based on. My guess is that the
Bourne shell binaries under MiNT will weight in at a little over 30K,
which would be nice and small for running shell scripts, etc. If I
can get an sh(1) running under MiNT (if I ever find the sources),
how would everyone feel about changing the system() function in
the MiNT library to use the shell rather than simulating it? The
advantages would be great; for example, the line

clean:
	rm -f *.o core

in a Makefile would do what it is supposed to, instead of looking for
a file called `*.o', and lines like

support.olb:
	cd support; make

would also work. I'd also like to get #! <shell> support built into
MiNT, so that we could run shell scripts from the desktop or shell
without fooling around with silly extensions like .ksh .sh .g .bat
etc. (bash emulates this, but it should probably be in the kernel).

Comments, suggestions, mindless flames about which computer has the
longest, um... you know?


David

-- 
////////////////////////////////////////////////////////////////////////
/  David Megginson                      david@doe.utoronto.ca          /
/  Centre for Medieval Studies          meggin@vm.epas.utoronto.ca     /
////////////////////////////////////////////////////////////////////////

millert@tramp.Colorado.EDU (MILLER TODD C) (03/11/91)

Speaking of shells, if people are looking for a csh-ish shell for MiNT, someone
could port the clam shell (currently runs under minix & unix).  There is a
version on atari.archive in the minix directory, but its not the current one.
You might try aerospace.aero.org though...

 - todd
-- 
Todd C. Miller                    | "But all the politiCIAns now
millert@tramp.Colorado.EDU        |  They have no excuse
al804@cleveland.Freenet.Edu       |  They just hide behind their power
University of Colorado @ Boulder  |  And keep us from the truth" - Roger McGuinn

rosenkra@convex.com (William Rosencranz) (03/11/91)

In article <1991Mar10.220416.8388@doe.utoronto.ca> david@doe.utoronto.ca (David Megginson) writes:
>how would everyone feel about changing the system() function in
>the MiNT library to use the shell rather than simulating it? The

i would love to see this, especially for make(1). the problem is not
really with system per se, it is with the assortment of shells we have.
most seem too large. as a compromise, you could write a system which
contains some of the more important shell parsing, globbing, path finding,
etc. i have a system which at least does the path search, but it is not
hashed, of course (which is no big deal since spawned shells have to
hash from scratch anyway). i also like the idea of a real smart shell
which would just save context when spawning so the text segment already
in memory is used (i.e. simulating a smart VM pager). gulam is not
very robust here, and awkward to say the least (and i never was able
to jump back into gulam in my system call).

>would also work. I'd also like to get #! <shell> support built into
>MiNT, so that we could run shell scripts from the desktop or shell
>without fooling around with silly extensions like .ksh .sh .g .bat
>etc. (bash emulates this, but it should probably be in the kernel)

yes, this too would be nice. however, ls(1) still may not find
executable scripts (and flag with "*" under -F option)
unless it reads the first line of every file (painfully slow).
there is no "executable" bit in the DTA, as i recall. maybe the
archive bit could be used (i have never really found a use for it
otherwise).

-bill
rosenkra@convex.com

--
Bill Rosenkranz            |UUCP: {uunet,texsun}!convex!c1yankee!rosenkra
Convex Computer Corp.      |ARPA: rosenkra%c1yankee@convex.com