Unverified Commit a03eab61 authored by nikolaiser's avatar nikolaiser
Browse files

scala-next: Init at 3.5.1

This change allows to use the latest non-LTS scala version
parent 4de4818c
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
{ scala, fetchurl }:

scala.bare.overrideAttrs (oldAttrs: {
  version = "3.5.1";
  pname = "scala-next";
  src = fetchurl {
    inherit (oldAttrs.src) url;
    hash = "sha256-pRfoCXFVnnEh3zyB9HbUZK3qrQ94Gq3iXX2fWGS/l9o=";
  };
})
+30 −19
Original line number Diff line number Diff line
{ lib, stdenv, fetchurl, makeWrapper, jre, ncurses }:
{
  lib,
  stdenv,
  fetchurl,
  makeWrapper,
  jre,
  ncurses,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  version = "3.3.3";
  pname = "scala-bare";

  src = fetchurl {
    url = "https://github.com/lampepfl/dotty/releases/download/${version}/scala3-${version}.tar.gz";
    url = "https://github.com/scala/scala3/releases/download/${finalAttrs.version}/scala3-${finalAttrs.version}.tar.gz";
    hash = "sha256-61lAETEvqkEqr5pbDltFkh+Qvp+EnCDilXN9X67NFNE=";
  };

  propagatedBuildInputs = [ jre ncurses.dev ] ;
  propagatedBuildInputs = [
    jre
    ncurses.dev
  ];
  nativeBuildInputs = [ makeWrapper ];

  installPhase = ''
@@ -20,23 +30,24 @@ stdenv.mkDerivation rec {
  # Use preFixup instead of fixupPhase
  # because we want the default fixupPhase as well
  preFixup = ''
        bin_files=$(find $out/bin -type f ! -name common)
    bin_files=$(find $out/bin -type f ! -name "*common*" ! -name "scala-cli.jar")
    for f in $bin_files ; do
      wrapProgram $f --set JAVA_HOME ${jre} --prefix PATH : '${ncurses.dev}/bin'
    done
  '';

  meta = with lib; {
    description = "Research platform for new language concepts and compiler technologies for Scala";
    longDescription = ''
       Dotty is a platform to try out new language concepts and compiler technologies for Scala.
       The focus is mainly on simplification. We remove extraneous syntax (e.g. no XML literals),
       and try to boil down Scala’s types into a smaller set of more fundamental constructs.
       The theory behind these constructs is researched in DOT, a calculus for dependent object types.
    '';
    homepage = "http://dotty.epfl.ch/";
    license = licenses.bsd3;
    description = "The Scala 3 compiler, also known as Dotty";
    homepage = "https://scala-lang.org/";
    license = licenses.asl20;
    platforms = platforms.all;
    maintainers = with maintainers; [ karolchmist virusdave kashw2 ];
    maintainers = with maintainers; [
      karolchmist
      virusdave
      kashw2
      natsukagami
      hamzaremmal
      dottybot
    ];
  };
}
})
+17 −3
Original line number Diff line number Diff line
{ stdenv, fetchurl, makeWrapper, jre, callPackage }:
{
  stdenv,
  fetchurl,
  makeWrapper,
  jre,
  callPackage,
}:

let
  bare = callPackage ./bare.nix {
    inherit stdenv fetchurl makeWrapper jre;
    inherit
      stdenv
      fetchurl
      makeWrapper
      jre
      ;
  };
in

@@ -21,4 +32,7 @@ stdenv.mkDerivation {
  '';

  inherit (bare) meta;
} // { inherit bare; }
}
// {
  inherit bare;
}