aboutsummaryrefslogtreecommitdiff
path: root/shells/ammonite
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/ammonite
parent9fd44c6b1d5495c53a25b86a6e9eac3bf72f707f (diff)
downloadports-a2088773274ce2e629d211335d3dfa7891a3c5c3.tar.gz
ports-a2088773274ce2e629d211335d3dfa7891a3c5c3.zip
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/ammonite')
-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
4 files changed, 64 insertions, 0 deletions
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)