From 4ed7db95ac8bedb88702e9eb3cda9e34ddae2157 Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Sun, 16 Oct 2016 18:56:28 -0400 Subject: [PATCH] ammonite-repl: init at 0.7.8 --- pkgs/development/tools/ammonite/default.nix | 37 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 39 insertions(+) create mode 100644 pkgs/development/tools/ammonite/default.nix diff --git a/pkgs/development/tools/ammonite/default.nix b/pkgs/development/tools/ammonite/default.nix new file mode 100644 index 000000000000..7cb4afbc12e2 --- /dev/null +++ b/pkgs/development/tools/ammonite/default.nix @@ -0,0 +1,37 @@ +{ stdenv, lib, fetchurl, makeWrapper, jre }: + +stdenv.mkDerivation rec { + name = "ammonite-repl-${version}"; + version = "0.7.8"; + + src = fetchurl { + url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/${version}"; + sha256 = "0s34p168h5c7ij61rbmaygb95r654yj4j0wh6qya53k4ywl32vkp"; + }; + + propagatedBuildInputs = [ jre ] ; + buildInputs = [ makeWrapper ] ; + + phases = "installPhase"; + + installPhase = '' + mkdir -p $out/bin + cp ${src} $out/bin/amm + chmod +x $out/bin/amm + wrapProgram $out/bin/amm --prefix PATH ":" ${jre}/bin ; + ''; + + meta = { + description = "Improved Scala REPL"; + longDescription = '' + The Ammonite-REPL is an improved Scala REPL, re-implemented from first principles. + It is much more featureful than the default REPL and comes + with a lot of ergonomic improvements and configurability + that may be familiar to people coming from IDEs or other REPLs such as IPython or Zsh. + ''; + homepage = http://www.lihaoyi.com/Ammonite/; + license = lib.licenses.mit; + platforms = lib.platforms.all; + maintainer = [ lib.maintainers.nequissimus ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1ffa546dec05..a895ac620b8b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -395,6 +395,8 @@ in albert = qt5.callPackage ../applications/misc/albert {}; + ammonite-repl = callPackage ../development/tools/ammonite {}; + amtterm = callPackage ../tools/system/amtterm {}; analog = callPackage ../tools/admin/analog {};