summary refs log tree commit diff
path: root/pkgs/development/tools/micronaut/default.nix
blob: 102f911bf85a3e8c1cb65e60264ba57516dd1e94 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{ stdenv, fetchzip, jdk, makeWrapper }:

stdenv.mkDerivation rec {
  pname = "micronaut";
  version = "1.2.1";

  src = fetchzip {
    url = "https://github.com/micronaut-projects/micronaut-core/releases/download/v${version}/${pname}-${version}.zip";
    sha256 = "0lfl2hfakpdcfii3a3jr6kws731jamy4fb3dmlnj5ydk0zbnmk6r";
  };

  nativeBuildInputs = [ makeWrapper ];

  installPhase = ''
    rm bin/mn.bat
    cp -r . $out
    wrapProgram $out/bin/mn \
      --prefix JAVA_HOME : ${jdk} 
  '';

  meta = with stdenv.lib; {
    description = ''
      A modern, JVM-based, full-stack framework for building modular, 
      easily testable microservice and serverless applications.
    '';
    longDescription = ''
      Reflection-based IoC frameworks load and cache reflection data for 
      every single field, method, and constructor in your code, whereas with 
      Micronaut, your application startup time and memory consumption are 
      not bound to the size of your codebase.
    '';
    homepage = https://micronaut.io/;
    license = licenses.asl20;
    platforms = platforms.all;
    maintainers = with maintainers; [ moaxcp ];
  };
}