From c5ea68e6b9c5cfc6578cc91e1d7ff2ebf7f1d236 Mon Sep 17 00:00:00 2001 From: Jon Roberts Date: Wed, 29 Sep 2021 15:45:23 -0500 Subject: [PATCH] google-java-format: init at 1.11.0 --- maintainers/maintainer-list.nix | 6 +++ .../tools/google-java-format/default.nix | 39 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 47 insertions(+) create mode 100644 pkgs/development/tools/google-java-format/default.nix diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 892f671d3b0..2b6a88abec7 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3251,6 +3251,12 @@ githubId = 13485450; name = "Emmanuel Rosa"; }; + emptyflask = { + email = "jon@emptyflask.dev"; + github = "emptyflask"; + githubId = 28287; + name = "Jon Roberts"; + }; endgame = { email = "jack@jackkelly.name"; github = "endgame"; diff --git a/pkgs/development/tools/google-java-format/default.nix b/pkgs/development/tools/google-java-format/default.nix new file mode 100644 index 00000000000..626a3b5271d --- /dev/null +++ b/pkgs/development/tools/google-java-format/default.nix @@ -0,0 +1,39 @@ +{ lib, stdenv, fetchurl, jre, makeWrapper }: + +stdenv.mkDerivation rec { + pname = "google-java-format"; + version = "1.11.0"; + + src = fetchurl { + url = "https://github.com/google/google-java-format/releases/download/v${version}/google-java-format-${version}-all-deps.jar"; + sha256 = "1ixpg8ljg819fq94mxyypknmslva3rkifphbnq3ic71b7iip6lia"; + }; + + dontUnpack = true; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ jre ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/{bin,share/google-java-format} + install -D ${src} $out/share/google-java-format/google-java-format.jar + + makeWrapper ${jre}/bin/java $out/bin/google-java-format \ + --add-flags "-jar $out/share/google-java-format/google-java-format.jar" + + runHook postInstall + ''; + + meta = with lib; { + description = "Java source formatter by Google"; + longDescription = '' + A program that reformats Java source code to comply with Google Java Style. + ''; + homepage = "https://github.com/google/google-java-format"; + license = licenses.asl20; + maintainers = [ maintainers.emptyflask ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f3934e52b50..6bb69fd4689 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5677,6 +5677,8 @@ with pkgs; google-cloud-cpp = callPackage ../development/libraries/google-cloud-cpp { }; + google-java-format = callPackage ../development/tools/google-java-format { }; + gdown = with python3Packages; toPythonApplication gdown; gopro = callPackage ../tools/video/gopro { };