nixpkgs/pkgs/development/tools/micronaut/default.nix

40 lines
1.4 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchzip, jdk, makeWrapper, installShellFiles }:
2019-09-07 13:54:22 +01:00
stdenv.mkDerivation rec {
pname = "micronaut";
2020-08-02 07:34:33 +01:00
version = "1.3.7";
2019-09-07 13:54:22 +01:00
src = fetchzip {
url = "https://github.com/micronaut-projects/micronaut-core/releases/download/v${version}/${pname}-${version}.zip";
2020-08-02 07:34:33 +01:00
sha256 = "1f9fhp10fdm18g33kxl70l6l3x1k8p81h2c3zahjmhlg0sam78zw";
2019-09-07 13:54:22 +01:00
};
2019-10-01 11:08:22 +01:00
nativeBuildInputs = [ makeWrapper installShellFiles ];
2019-09-07 13:54:22 +01:00
installPhase = ''
runHook preInstall
2019-09-07 13:54:22 +01:00
rm bin/mn.bat
cp -r . $out
wrapProgram $out/bin/mn \
--prefix JAVA_HOME : ${jdk}
2019-10-01 11:08:22 +01:00
installShellCompletion --bash --name mn.bash bin/mn_completion
runHook postInstall
2019-09-07 13:54:22 +01:00
'';
meta = with lib; {
description = "Modern, JVM-based, full-stack framework for building microservice applications";
2019-09-07 13:54:22 +01:00
longDescription = ''
Micronaut is a modern, JVM-based, full stack microservices framework
designed for building modular, easily testable microservice applications.
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
2019-09-07 13:54:22 +01:00
not bound to the size of your codebase.
'';
homepage = "https://micronaut.io/";
2019-09-07 13:54:22 +01:00
license = licenses.asl20;
platforms = platforms.all;
maintainers = with maintainers; [ moaxcp ];
};
}