summary refs log tree commit diff
path: root/modules/packages/mtxclient-git.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/packages/mtxclient-git.nix')
-rw-r--r--modules/packages/mtxclient-git.nix61
1 files changed, 61 insertions, 0 deletions
diff --git a/modules/packages/mtxclient-git.nix b/modules/packages/mtxclient-git.nix
new file mode 100644
index 0000000..d2a9d6a
--- /dev/null
+++ b/modules/packages/mtxclient-git.nix
@@ -0,0 +1,61 @@
+# This file was copied from NUR: https://github.com/nix-community/nur-combined/blob/master/repos/deeunderscore/pkgs/mtxclient/default.nix
+# This file is a modified version of nixpkgs/pkgs/development/libraries/mtxclient/default.nix (copied at 5c4b9be)
+
+{ lib, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, openssl
+, olm
+, spdlog
+, nlohmann_json
+, libevent
+, curl
+, coeurl
+, re2
+, mtxclientSrc
+}:
+stdenv.mkDerivation {
+  pname = "mtxclient";
+  version = "git+master";
+  src = mtxclientSrc;
+
+  cmakeFlags = [
+    # Network requiring tests can't be disabled individually:
+    # https://github.com/Nheko-Reborn/mtxclient/issues/22
+    "-DBUILD_LIB_TESTS=OFF"
+    "-DBUILD_LIB_EXAMPLES=OFF"
+  ];
+
+  postPatch = ''
+    # See https://github.com/gabime/spdlog/issues/1897
+    sed -i '1a add_compile_definitions(SPDLOG_FMT_EXTERNAL)' CMakeLists.txt
+  '';
+
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+  buildInputs = [
+    spdlog
+    nlohmann_json
+    openssl
+    olm
+    libevent
+    curl
+    coeurl
+    re2
+  ];
+
+  meta = with lib; {
+    description = "Client API library for Matrix, built on top of Boost.Asio";
+    homepage = "https://github.com/Nheko-Reborn/mtxclient";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fpletz pstn ];
+    platforms = platforms.all;
+    # Should be fixable if a higher clang version is used, see:
+    # https://github.com/NixOS/nixpkgs/pull/85922#issuecomment-619287177
+    broken = stdenv.targetPlatform.isDarwin;
+  };
+}