wip/guile-gash: import as guile-gash-0.1
Gash is a POSIX-compatible shell written in Guile Scheme. It provides both the shell interface, as well as a Guile library for parsing shell scripts. Gash is designed to bootstrap Bash as part of the Guix bootstrap process. There are plans to develop Gash into a general-purpose shell and tool for building interfaces between Scheme and the shell. Features of the shell * Sophisticated enough to be used to build Bash. * Has a nice colorized prompt. * Includes all of the POSIX-specified "special" built-ins except for `times'. * Includes about half of the POSIX-specified "regular" built-ins (see `gash/built-ins.scm' for details). Features of the programming interface * Parses Shell scripts into an AST. * Provides a rudimentary interface for writing Shell-like Scheme scripts.
This commit is contained in:
parent
0dfaefb1f0
commit
465ca58233
1
Makefile
1
Makefile
|
@ -1293,6 +1293,7 @@ SUBDIR+= guile-bytestructures
|
|||
SUBDIR+= guile-commonmark
|
||||
SUBDIR+= guile-gcrypt
|
||||
SUBDIR+= guile-git
|
||||
SUBDIR+= guile-gash
|
||||
SUBDIR+= guile-haunt
|
||||
SUBDIR+= guile-json
|
||||
SUBDIR+= guile-reader
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
Gash is a POSIX-compatible shell written in Guile Scheme. It provides
|
||||
both the shell interface, as well as a Guile library for parsing shell
|
||||
scripts. Gash is designed to bootstrap Bash as part of the Guix
|
||||
bootstrap process. There are plans to develop Gash into a
|
||||
general-purpose shell and tool for building interfaces between Scheme
|
||||
and the shell.
|
||||
|
||||
Features of the shell
|
||||
* Sophisticated enough to be used to build Bash.
|
||||
* Has a nice colorized prompt.
|
||||
* Includes all of the POSIX-specified "special" built-ins except for
|
||||
`times'.
|
||||
* Includes about half of the POSIX-specified "regular" built-ins
|
||||
(see `gash/built-ins.scm' for details).
|
||||
|
||||
Features of the programming interface
|
||||
* Parses Shell scripts into an AST.
|
||||
* Provides a rudimentary interface for writing Shell-like Scheme
|
||||
scripts.
|
|
@ -0,0 +1,24 @@
|
|||
# $NetBSD$
|
||||
|
||||
DISTNAME= gash-0.1
|
||||
PKGNAME= guile-${DISTNAME}
|
||||
CATEGORIES= www
|
||||
MASTER_SITES= http://download.savannah.nongnu.org/releases/gash/
|
||||
|
||||
MAINTAINER= ng0@n0.is
|
||||
HOMEPAGE= https://git.savannah.nongnu.org/cgit/gash.git
|
||||
COMMENT= POSIX-compatible shell written in Guile Scheme
|
||||
LICENSE= gnu-gpl-v3
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
GNU_CONFIGURE_PREFIX= ${PREFIX}/guile/2.2
|
||||
CONFIGURE_ARGS+= --libdir=${PREFIX}/guile/2.2/lib
|
||||
USE_TOOLS+= automake autoconf autoreconf pkg-config
|
||||
|
||||
INFO_FILES= YES
|
||||
|
||||
pre-configure:
|
||||
cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} autoreconf -I${PREFIX}/guile/2.2/share/aclocal -vif
|
||||
|
||||
.include "../../lang/guile22/buildlink3.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
|
@ -0,0 +1,81 @@
|
|||
@comment $NetBSD$
|
||||
guile/2.2/bin/gash
|
||||
guile/2.2/info/gash.info
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/break.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/cd.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/colon.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/command.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/continue.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/dot.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/echo.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/eval.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/exec.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/exit.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/export.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/false.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/pwd.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/read.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/readonly.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/return.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/set.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/shift.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/trap.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/true.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/type.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/umask.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/unset.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/built-ins/utils.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/compat.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/compat/hash-table.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/compat/textual-ports.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/config.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/environment.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/eval.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/gash.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/lexer.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/parser.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/pattern.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/readline.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/repl.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/shell.go
|
||||
guile/2.2/lib/guile/2.2/ccache/gash/word.go
|
||||
guile/2.2/share/guile/2.2/gash/built-ins.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/break.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/cd.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/colon.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/command.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/continue.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/dot.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/echo.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/eval.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/exec.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/exit.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/export.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/false.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/pwd.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/read.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/readonly.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/return.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/set.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/shift.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/trap.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/true.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/type.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/umask.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/unset.scm
|
||||
guile/2.2/share/guile/2.2/gash/built-ins/utils.scm
|
||||
guile/2.2/share/guile/2.2/gash/compat.scm
|
||||
guile/2.2/share/guile/2.2/gash/compat/hash-table.scm
|
||||
guile/2.2/share/guile/2.2/gash/compat/textual-ports.scm
|
||||
guile/2.2/share/guile/2.2/gash/config.scm
|
||||
guile/2.2/share/guile/2.2/gash/environment.scm
|
||||
guile/2.2/share/guile/2.2/gash/eval.scm
|
||||
guile/2.2/share/guile/2.2/gash/gash.scm
|
||||
guile/2.2/share/guile/2.2/gash/lexer.scm
|
||||
guile/2.2/share/guile/2.2/gash/parser.scm
|
||||
guile/2.2/share/guile/2.2/gash/pattern.scm
|
||||
guile/2.2/share/guile/2.2/gash/readline.scm
|
||||
guile/2.2/share/guile/2.2/gash/repl.scm
|
||||
guile/2.2/share/guile/2.2/gash/shell.scm
|
||||
guile/2.2/share/guile/2.2/gash/word.scm
|
|
@ -0,0 +1,6 @@
|
|||
$NetBSD$
|
||||
|
||||
SHA1 (gash-0.1.tar.gz) = 806e42582feb0f4a769f7f56d04b78f11cc5b933
|
||||
RMD160 (gash-0.1.tar.gz) = 1cfc0db59584f4ada407c293b5509b88dd84566a
|
||||
SHA512 (gash-0.1.tar.gz) = 4f90d40eb434e3f735ef727aeeb55d88b1962b0e7d1f02f711961234934a62a40d8f8d8c1004fe8fc825c0b01fab520eaacba28bcf758452e3db3d66098c2c85
|
||||
Size (gash-0.1.tar.gz) = 321694 bytes
|
Loading…
Reference in New Issue