summaryrefslogtreecommitdiff
path: root/shells
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2019-02-18 17:01:53 +0000
committerKurt Jaeger <pi@FreeBSD.org>2019-02-18 17:01:53 +0000
commita2088773274ce2e629d211335d3dfa7891a3c5c3 (patch)
tree5d2d948cfbeed83000b2a01fe0b3704355af6cfa /shells
parent- Update to 0.8.2 (diff)
New port: shells/ammonite
A modern replacement for the Bash system shell. Provides a systems shell in the high-level Scala language, letting you seamlessly mix system operations with real code without the hassle or the frustration of trying to write complex code in Bash. Ammonite lets you use the Scala language for scripting purposes: in a Read-Evaluate-Print-Loop (REPL), as scripts, as a library to use in existing projects, or as a standalone systems shell. WWW: https://ammonite.io/ PR: 235759 Submitted by: Jens Grassel <jan0sch@mykolab.com>
Notes
Notes: svn path=/head/; revision=493275
Diffstat (limited to 'shells')
-rw-r--r--shells/Makefile1
-rw-r--r--shells/ammonite/Makefile32
-rw-r--r--shells/ammonite/distinfo3
-rw-r--r--shells/ammonite/pkg-descr10
-rw-r--r--shells/ammonite/pkg-message19
5 files changed, 65 insertions, 0 deletions
diff --git a/shells/Makefile b/shells/Makefile
index f1d660e7de3d..cc315fda2453 100644
--- a/shells/Makefile
+++ b/shells/Makefile
@@ -4,6 +4,7 @@
COMMENT = Shells
SUBDIR += 44bsd-csh
+ SUBDIR += ammonite
SUBDIR += bash
SUBDIR += bash-completion
SUBDIR += bash-static
diff --git a/shells/ammonite/Makefile b/shells/ammonite/Makefile
new file mode 100644
index 000000000000..ba8615fcda20
--- /dev/null
+++ b/shells/ammonite/Makefile
@@ -0,0 +1,32 @@
+# $FreeBSD$
+
+PORTNAME= ammonite
+DISTVERSION= 1.6.3
+CATEGORIES= shells java
+MASTER_SITES= https://github.com/lihaoyi/Ammonite/releases/download/${PORTVERSION}/
+DISTNAME= 2.12-${PORTVERSION}
+EXTRACT_SUFX=
+DIST_SUBDIR= ${PORTNAME}
+EXTRACT_ONLY=
+
+MAINTAINER= freebsd-ports@jan0sch.de
+COMMENT= Provides a system shell in the high-level Scala language
+
+LICENSE= MIT
+
+USE_JAVA= yes
+
+JAVA_VERSION= 1.8+
+NO_BUILD= yes
+NO_ARCH= yes
+PLIST_FILES= bin/ammonite
+
+do-extract:
+ @${MKDIR} ${WRKSRC}
+ @${CP} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME} ${WRKSRC}
+
+do-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/${DISTNAME} \
+ ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
+
+.include <bsd.port.mk>
diff --git a/shells/ammonite/distinfo b/shells/ammonite/distinfo
new file mode 100644
index 000000000000..b74f95f5534d
--- /dev/null
+++ b/shells/ammonite/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1550239983
+SHA256 (ammonite/2.12-1.6.3) = adafccfdc70cdc83f072f6b0c340205d422fca56f743e269635dfb40dc63b171
+SIZE (ammonite/2.12-1.6.3) = 28929884
diff --git a/shells/ammonite/pkg-descr b/shells/ammonite/pkg-descr
new file mode 100644
index 000000000000..097d4ba1a1cf
--- /dev/null
+++ b/shells/ammonite/pkg-descr
@@ -0,0 +1,10 @@
+A modern replacement for the Bash system shell. Provides a systems shell in
+the high-level Scala language, letting you seamlessly mix system operations
+with real code without the hassle or the frustration of trying to write
+complex code in Bash.
+
+Ammonite lets you use the Scala language for scripting purposes: in a
+Read-Evaluate-Print-Loop (REPL), as scripts, as a library to use
+in existing projects, or as a standalone systems shell.
+
+WWW: https://ammonite.io/
diff --git a/shells/ammonite/pkg-message b/shells/ammonite/pkg-message
new file mode 100644
index 000000000000..7a2a2d6a2e47
--- /dev/null
+++ b/shells/ammonite/pkg-message
@@ -0,0 +1,19 @@
+To use ammonite as a shell you must(!) setup a configuration file
+~/.ammonite/predef.sc with a least the following minimal content:
+
+interp.load.ivy(
+ "com.lihaoyi" %% "ammonite-ops" % ammonite.Constants.version
+)
+interp.load.ivy(
+ "com.lihaoyi" %
+ s"ammonite-shell_${scala.util.Properties.versionNumberString}" %
+ ammonite.Constants.version
+)
+// This @ is necessary for Ammonite to process the `interp.load.ivy`
+// before continuing.
+@
+val shellSession = ammonite.shell.ShellSession()
+import shellSession._
+import ammonite.ops._
+import ammonite.shell._
+ammonite.shell.Configure(interp, repl, wd)