vscode-extensions.capatech.betacode: init at 0.1.10 (#355720)
[NixPkgs.git] / pkgs / servers / matrix-synapse / matrix-appservice-slack / default.nix
bloba2f75244b9b35a39465ae953bc1cbe738d4bf1ca
1 { lib
2 , fetchFromGitHub
3 , fetchYarnDeps
4 , makeWrapper
5 , matrix-sdk-crypto-nodejs
6 , mkYarnPackage
7 , nodejs
8 }:
10 let
11   data = lib.importJSON ./pin.json;
13 mkYarnPackage rec {
14   inherit nodejs;
16   pname = "matrix-appservice-slack";
17   version = data.version;
19   packageJSON = ./package.json;
20   src = fetchFromGitHub {
21     owner = "matrix-org";
22     repo = "matrix-appservice-slack";
23     rev = data.version;
24     hash = data.srcHash;
25   };
27   offlineCache = fetchYarnDeps {
28     yarnLock = src + "/yarn.lock";
29     sha256 = data.yarnHash;
30   };
31   packageResolutions = {
32     "@matrix-org/matrix-sdk-crypto-nodejs" = "${matrix-sdk-crypto-nodejs}/lib/node_modules/@matrix-org/matrix-sdk-crypto-nodejs";
33   };
35   nativeBuildInputs = [ makeWrapper ];
37   buildPhase = ''
38     runHook preBuild
39     yarn run build
40     runHook postBuild
41   '';
43   postInstall = ''
44     makeWrapper '${nodejs}/bin/node' "$out/bin/matrix-appservice-slack" --add-flags \
45         "$out/libexec/matrix-appservice-slack/deps/matrix-appservice-slack/lib/app.js"
46   '';
48   doDist = false;
50   meta = with lib; {
51     description = "Matrix <--> Slack bridge";
52     mainProgram = "matrix-appservice-slack";
53     maintainers = with maintainers; [ beardhatcode chvp ];
54     license = licenses.asl20;
55   };