about summary refs log tree commit diff
path: root/pkgs/development/compilers/scala
diff options
context:
space:
mode:
authorTim Steinbach <tim@nequissimus.com>2019-06-13 14:40:45 -0400
committerTim Steinbach <tim@nequissimus.com>2019-06-13 14:40:45 -0400
commitee2acb33bfa2f1ab3c66ccb286d5f67a2157095a (patch)
treec831a90fb9345b9184b4f254a7193e9ac944410b /pkgs/development/compilers/scala
parent958350fbf7e1fe44557ce680d36077f2660ec817 (diff)
scala: Init 2.13
Make 2.13 the default, move 2.12 from default.nix to 2.12.nix
Diffstat (limited to 'pkgs/development/compilers/scala')
-rw-r--r--pkgs/development/compilers/scala/2.12.nix (renamed from pkgs/development/compilers/scala/default.nix)0
-rw-r--r--pkgs/development/compilers/scala/2.13.nix46
2 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/development/compilers/scala/default.nix b/pkgs/development/compilers/scala/2.12.nix
index ce863ef9c9154..ce863ef9c9154 100644
--- a/pkgs/development/compilers/scala/default.nix
+++ b/pkgs/development/compilers/scala/2.12.nix
diff --git a/pkgs/development/compilers/scala/2.13.nix b/pkgs/development/compilers/scala/2.13.nix
new file mode 100644
index 0000000000000..ab27d93a7cf90
--- /dev/null
+++ b/pkgs/development/compilers/scala/2.13.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl, makeWrapper, jre, gnugrep, coreutils }:
+
+stdenv.mkDerivation rec {
+  name = "scala-2.13.0";
+
+  src = fetchurl {
+    url = "https://www.scala-lang.org/files/archive/${name}.tgz";
+    sha256 = "12g0a9i0xxqxxcvmimm5w2wgmrdhq80p8bsp52d6yldz4lrnbm7p";
+  };
+
+  propagatedBuildInputs = [ jre ] ;
+  buildInputs = [ makeWrapper ] ;
+
+  installPhase = ''
+    mkdir -p $out
+    rm "bin/"*.bat
+    mv * $out
+
+    # put docs in correct subdirectory
+    mkdir -p $out/share/doc
+    mv $out/doc $out/share/doc/scala
+
+    for p in $(ls $out/bin/) ; do
+      wrapProgram $out/bin/$p \
+        --prefix PATH ":" ${coreutils}/bin \
+        --prefix PATH ":" ${gnugrep}/bin \
+        --prefix PATH ":" ${jre}/bin \
+        --set JAVA_HOME ${jre}
+    done
+  '';
+
+  meta = {
+    description = "General purpose programming language";
+    longDescription = ''
+      Scala is a general purpose programming language designed to express
+      common programming patterns in a concise, elegant, and type-safe way.
+      It smoothly integrates features of object-oriented and functional
+      languages, enabling Java and other programmers to be more productive.
+      Code sizes are typically reduced by a factor of two to three when
+      compared to an equivalent Java application.
+    '';
+    homepage = https://www.scala-lang.org/;
+    license = stdenv.lib.licenses.bsd3;
+    platforms = stdenv.lib.platforms.all;
+  };
+}