Add shells/guile-gash version 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
785eabc481
commit
d7421a980d
5 changed files with 129 additions and 1 deletions
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: Makefile,v 1.61 2018/11/10 20:00:04 wiz Exp $
|
||||
# $NetBSD: Makefile,v 1.62 2019/11/13 10:04:19 ng0 Exp $
|
||||
#
|
||||
|
||||
COMMENT= Shells
|
||||
|
@ -16,6 +16,7 @@ SUBDIR+= es
|
|||
SUBDIR+= esh
|
||||
SUBDIR+= fish
|
||||
SUBDIR+= git-sh
|
||||
SUBDIR+= guile-gash
|
||||
SUBDIR+= heirloom-sh
|
||||
SUBDIR+= lshell
|
||||
SUBDIR+= mksh
|
||||
|
|
19
shells/guile-gash/DESCR
Normal file
19
shells/guile-gash/DESCR
Normal file
|
@ -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.
|
21
shells/guile-gash/Makefile
Normal file
21
shells/guile-gash/Makefile
Normal file
|
@ -0,0 +1,21 @@
|
|||
# $NetBSD: Makefile,v 1.1 2019/11/13 10:04:19 ng0 Exp $
|
||||
|
||||
DISTNAME= gash-0.1
|
||||
PKGNAME= guile-${DISTNAME}
|
||||
CATEGORIES= shells
|
||||
MASTER_SITES= http://download.savannah.nongnu.org/releases/gash/
|
||||
|
||||
MAINTAINER= ng0@NetBSD.org
|
||||
HOMEPAGE= https://git.savannah.nongnu.org/cgit/gash.git
|
||||
COMMENT= POSIX-compatible shell written in Guile Scheme
|
||||
LICENSE= gnu-gpl-v3
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
GUILE_NEED_BOOTSTRAP= yes
|
||||
|
||||
USE_TOOLS+= pkg-config
|
||||
|
||||
INFO_FILES= YES
|
||||
|
||||
.include "../../lang/guile22/module.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
81
shells/guile-gash/PLIST
Normal file
81
shells/guile-gash/PLIST
Normal file
|
@ -0,0 +1,81 @@
|
|||
@comment $NetBSD: PLIST,v 1.1 2019/11/13 10:04:19 ng0 Exp $
|
||||
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
|
6
shells/guile-gash/distinfo
Normal file
6
shells/guile-gash/distinfo
Normal file
|
@ -0,0 +1,6 @@
|
|||
$NetBSD: distinfo,v 1.1 2019/11/13 10:04:19 ng0 Exp $
|
||||
|
||||
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 a new issue