electron_32: fix log spam when building on aarch64-linux (#378988)
[NixPkgs.git] / pkgs / by-name / pr / protoc-gen-es / package.nix
blobd75f349248524efdd99048097936253d0695673e
2   lib,
3   buildNpmPackage,
4   fetchFromGitHub,
5   npm-lockfile-fix,
6 }:
8 buildNpmPackage rec {
9   pname = "protoc-gen-es";
10   version = "2.2.3";
12   src = fetchFromGitHub {
13     owner = "bufbuild";
14     repo = "protobuf-es";
15     tag = "v${version}";
16     hash = "sha256-ECTra+uT5yEdTbi9kyrdseZQmcctPzCkDIkjX54Zc5Y=";
18     postFetch = ''
19       ${lib.getExe npm-lockfile-fix} $out/package-lock.json
20     '';
21   };
23   npmDepsHash = "sha256-a6kc0FkmDH71XH7GbEo7lWBC0HrXu8+WdS0b922RV0M=";
25   npmWorkspace = "packages/protoc-gen-es";
27   preBuild = ''
28     npm run --workspace=packages/protobuf build
29     npm run --workspace=packages/protoplugin build
30   '';
32   # copy npm workspace modules while properly resolving symlinks
33   # TODO: workaround can be removed once this is merged: https://github.com/NixOS/nixpkgs/pull/333759
34   postInstall = ''
35     rm -rf $out/lib/node_modules/protobuf-es/node_modules/@bufbuild
36     cp -rL node_modules/@bufbuild $out/lib/node_modules/protobuf-es/node_modules/
37   '';
39   passthru.updateScript = ./update.sh;
41   meta = with lib; {
42     description = "Protobuf plugin for generating ECMAScript code";
43     homepage = "https://github.com/bufbuild/protobuf-es";
44     changelog = "https://github.com/bufbuild/protobuf-es/releases/tag/v${version}";
45     license = licenses.asl20;
46     maintainers = with maintainers; [
47       felschr
48       jtszalay
49     ];
50   };