Desktop client for Matrix using Qt and C++20.
Find a file
2017-10-22 22:51:50 +03:00
.ci Remove test from formatting 2017-10-01 18:20:53 +03:00
dist Add missing dependencies to gentoo ebuild 2017-09-26 22:53:32 +03:00
include Use callbacks on MatrixClient 2017-10-22 22:51:50 +03:00
libs Initial support for state cache 2017-07-30 14:30:55 +03:00
resources Fix icons for retina displays 2017-10-15 22:08:51 +03:00
scripts Remove custom badge counter from mac and windows (#42) 2017-07-09 12:49:17 +03:00
src Use callbacks on MatrixClient 2017-10-22 22:51:50 +03:00
tests Linting 2017-09-24 17:39:06 +03:00
.clang-format Remove extra inline keywords 2017-10-22 19:03:55 +03:00
.gitignore Remove nick colors 2017-08-26 11:33:26 +03:00
.gitmodules Initial support for state cache 2017-07-30 14:30:55 +03:00
.travis.yml Add clang-format to ci 2017-09-24 17:08:11 +03:00
appveyor.yml Build lmdb on appveyor 2017-10-01 22:38:46 +03:00
CMakeLists.txt Remove cache updates from the main thread 2017-10-21 21:17:01 +03:00
default.nix Add basic nix expressions (#47) 2017-08-05 18:40:00 +03:00
LICENSE Initial commit 2017-04-06 02:06:42 +03:00
Makefile Remove ui flickering when adding new timeline events 2017-10-21 18:53:15 +03:00
package.nix Nix: ignore earlier build results 2017-08-05 18:56:41 +03:00
README.md Remove snap 2017-10-21 12:59:38 +03:00

nheko

Build Status Build status Chat on Matrix License: GPL v3 AUR: nheko-git

The motivation behind the project is to provide a native desktop app for Matrix that feels more like a mainstream chat app (Riot, Telegram etc) and less like an IRC client.

Features

Most of the features you would expect from a chat application are missing right now but we are getting close to a more feature complete client. Specifically there is support for:

  • Joining & leaving rooms
  • Sending & receiving images and emoji.
  • Receiving typing notifications.

Installation

Arch Linux

pacaur -S nheko-git

Fedora

sudo dnf copr enable xvitaly/matrix
sudo dnf install nheko

Gentoo Linux

sudo layman -a matrix
sudo emerge -a nheko

Windows

You can find an installer here.

Build Requirements

  • Qt5 (5.7 or greater). Qt 5.7 adds support for color font rendering with Freetype, which is essential to properly support emoji.
  • CMake 3.1 or greater.
  • LMDB.
  • A compiler that supports C++11.
    • Clang 3.3 (or greater).
    • GCC 4.8 (or greater).
Arch Linux
sudo pacman -S qt5-base qt5-tools cmake gcc fontconfig lmdb
Gentoo Linux
sudo emerge -a ">=dev-qt/qtgui-5.7.1" media-libs/fontconfig
Ubuntu (e.g 14.04)
sudo add-apt-repository ppa:beineri/opt-qt58-trusty
sudo add-apt-repository ppa:george-edison55/cmake-3.x
sudo apt-get update
sudo apt-get install qt58base qt58tools cmake liblmdb-dev
OSX (Xcode 8 or later)
brew update
brew install qt5 lmdb

N.B. you will need to pass -DCMAKE_PREFIX_PATH=/usr/local/opt/qt5 to cmake to point it at your qt5 install (tweaking the path as needed)

Building

Clone the repo with its submodules

git clone --recursive https://github.com/mujx/nheko

or

git clone https://github.com/mujx/nheko
cd nheko
git submodule update --init

and then use the following

cmake -H. -Bbuild -DCMAKE_BUILD_TYPE=Release # Default is Debug.
make -C build

The nheko binary will be located in the build directory.

MacOS

You can create an app bundle with make app. The output will be located at dist/MacOS/Nheko.app which can be copied to /Applications/Nheko.app.

You can also create a disk image with make dmg. The output will be located at dist/MacOS/Nheko.dmg

Nix

Download the repo as mentioned above and run

nix-build

in the project folder. This will output a binary to result/bin/nheko.

You can also install nheko by running nix-env -f . -i

Contributing

Any kind of contribution to the project is greatly appreciated. You are also encouraged to open feature request issues.

Screens

Here is a screen shot to get a feel for the UI, but things will probably change.

nheko

Third party