biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / spring-boot-cli / default.nix
blob1b7d67955906696d5cf70ce7a7bdf1ff3d2e9d99
1 { lib, stdenv, fetchzip, jdk, makeWrapper, installShellFiles, coreutils, testers, gitUpdater }:
3 stdenv.mkDerivation (finalAttrs: {
4   pname = "spring-boot-cli";
5   version = "3.2.4";
7   src = fetchzip {
8     url = "mirror://maven/org/springframework/boot/${finalAttrs.pname}/${finalAttrs.version}/${finalAttrs.pname}-${finalAttrs.version}-bin.zip";
9     hash = "sha256-rOXQyIdyDT/YRuWgbbObFWnCOI+XEZ4+vGvIxJJ8CC4=";
10   };
12   nativeBuildInputs = [ makeWrapper installShellFiles ];
14   installPhase = ''
15     runHook preInstall
16     rm bin/spring.bat
17     installShellCompletion --bash shell-completion/bash/spring
18     installShellCompletion --zsh shell-completion/zsh/_spring
19     rm -r shell-completion
20     cp -r . $out
21     wrapProgram $out/bin/spring \
22       --set JAVA_HOME ${jdk} \
23       --set PATH /bin:${coreutils}/bin:${jdk}/bin
24     runHook postInstall
25   '';
27   passthru = {
28     tests.version = testers.testVersion {
29       package = finalAttrs.finalPackage;
30       command = "${lib.getExe finalAttrs.finalPackage} --version";
31       version = "v${finalAttrs.version}";
32     };
33     updateScript = gitUpdater {
34       url = "https://github.com/spring-projects/spring-boot";
35       ignoredVersions = ".*-(RC|M).*";
36       rev-prefix = "v";
37     };
38   };
40   meta = with lib; {
41     description = ''
42       CLI which makes it easy to create spring-based applications
43     '';
44     longDescription = ''
45       Spring Boot makes it easy to create stand-alone, production-grade
46       Spring-based Applications that you can run. We take an opinionated view
47       of the Spring platform and third-party libraries, so that you can get
48       started with minimum fuss. Most Spring Boot applications need very
49       little Spring configuration.
51       You can use Spring Boot to create Java applications that can be started
52       by using java -jar or more traditional war deployments. We also provide
53       a command line tool that runs “spring scripts”.
54     '';
55     homepage = "https://spring.io/projects/spring-boot";
56     changelog = "https://github.com/spring-projects/spring-boot/releases/tag/v${finalAttrs.version}";
57     sourceProvenance = with sourceTypes; [ binaryBytecode ];
58     mainProgram = "spring";
59     license = licenses.asl20;
60     platforms = platforms.all;
61     maintainers = with maintainers; [ moaxcp ];
62   };