Unverified Commit d38127eb authored by Martin Weinelt's avatar Martin Weinelt Committed by GitHub
Browse files

Merge pull request #232017 from NickCao/mjolnir

mjolnir: 1.5.0 -> 1.6.4, build with mkYarnPackage
parents 711cba3f 3c0f0d84
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@ let

  # these config files will be merged one after the other to build the final config
  configFiles = [
    "${pkgs.mjolnir}/share/mjolnir/config/default.yaml"
    "${pkgs.mjolnir}/libexec/mjolnir/deps/mjolnir/config/default.yaml"
    moduleConfigFile
  ];

@@ -200,7 +200,7 @@ in
      wantedBy = [ "multi-user.target" ];

      serviceConfig = {
        ExecStart = ''${pkgs.mjolnir}/bin/mjolnir'';
        ExecStart = ''${pkgs.mjolnir}/bin/mjolnir --mjolnir-config ./config/default.yaml'';
        ExecStartPre = [ generateConfig ];
        WorkingDirectory = cfg.dataPath;
        StateDirectory = "mjolnir";
+2 −1
Original line number Diff line number Diff line
@@ -32,7 +32,6 @@ import ../make-test-python.nix (
    name = "mjolnir";
    meta = with pkgs.lib; {
      maintainers = teams.matrix.members;
      broken = true; # times out after spending many hours
    };

    nodes = {
@@ -99,6 +98,8 @@ import ../make-test-python.nix (
            enable = true;
            username = "mjolnir";
            passwordFile = pkgs.writeText "password.txt" "mjolnir-password";
            # otherwise mjolnir tries to connect to ::1, which is not listened by pantalaimon
            options.listenAddress = "127.0.0.1";
          };
          managementRoom = "#moderators:homeserver";
        };
+27 −38
Original line number Diff line number Diff line
{ lib
, nixosTests
, stdenv
, mkYarnPackage
, fetchFromGitHub
, fetchYarnDeps
, matrix-sdk-crypto-nodejs
, makeWrapper
, nodejs
, pkgs
, nixosTests
}:

stdenv.mkDerivation rec {
mkYarnPackage rec {
  pname = "mjolnir";
  version = "1.5.0";
  version = "1.6.4";

  src = fetchFromGitHub {
    owner = "matrix-org";
    repo = "mjolnir";
    rev = "v${version}";
    sha256 = "YmP+r9W5e63Aw66lSQeTTbYwSF/vjPyHkoehJxtcRNw=";
    rev = "refs/tags/v${version}";
    hash = "sha256-/vnojWLpu/fktqPUhAdL1QTESxDwFrBVYAkyF79Fj9w=";
  };

  nativeBuildInputs = [
    nodejs
    makeWrapper
  ];
  packageJSON = ./package.json;

  buildPhase =
    let
      nodeDependencies = ((import ./node-composition.nix {
        inherit pkgs nodejs;
        inherit (stdenv.hostPlatform) system;
      }).nodeDependencies.override (old: {
        # access to path '/nix/store/...-source' is forbidden in restricted mode
        src = src;
        dontNpmInstall = true;
      }));
    in
    ''
      runHook preBuild
  offlineCache = fetchYarnDeps {
    yarnLock = src + "/yarn.lock";
    hash = "sha256-B4s0CYr5Ihoh4gkckwZ3z0Nb4LMET48WvRXuhk3fpQM=";
  };

      ln -s ${nodeDependencies}/lib/node_modules .
      export HOME=$(mktemp -d)
      export PATH="${nodeDependencies}/bin:$PATH"
      npm run build
  packageResolutions = {
    "@matrix-org/matrix-sdk-crypto-nodejs" = "${matrix-sdk-crypto-nodejs}/lib/node_modules/@matrix-org/matrix-sdk-crypto-nodejs";
  };

      runHook postBuild
    '';
  nativeBuildInputs = [ makeWrapper ];

  installPhase = ''
    runHook preInstall
  buildPhase = ''
    runHook preBuild

    mkdir -p $out/share
    cp -a . $out/share/mjolnir
    pushd deps/${pname}
    yarn run build
    popd

    makeWrapper ${nodejs}/bin/node $out/bin/mjolnir \
      --add-flags $out/share/mjolnir/lib/index.js
    runHook postBuild
  '';

    runHook postInstall
  postInstall = ''
    makeWrapper ${nodejs}/bin/node "$out/bin/mjolnir" \
      --add-flags "$out/libexec/mjolnir/deps/mjolnir/lib/index.js"
  '';

  passthru = {
    tests = {
      inherit (nixosTests) mjolnir;
    };
    updateScript = ./update.sh;
  };

  meta = with lib; {
+0 −17
Original line number Diff line number Diff line
# This file has been generated by node2nix 1.11.1. Do not edit!

{pkgs ? import <nixpkgs> {
    inherit system;
  }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs_14"}:

let
  nodeEnv = import ./node-env.nix {
    inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
    inherit pkgs nodejs;
    libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
  };
in
import ./node-deps.nix {
  inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
  inherit nodeEnv;
}
+0 −4402

File deleted.

Preview size limit exceeded, changes collapsed.

Loading