matrixion/README.md

155 lines
4.1 KiB
Markdown
Raw Normal View History

2017-04-06 04:03:46 +03:00
nheko
----
2017-10-01 19:24:35 +03:00
[![Build Status](https://travis-ci.org/mujx/nheko.svg?branch=master)](https://travis-ci.org/mujx/nheko)
[![Build status](https://ci.appveyor.com/api/projects/status/07qrqbfylsg4hw2h/branch/master?svg=true)](https://ci.appveyor.com/project/mujx/nheko/branch/master)
[![Chat on Matrix](https://img.shields.io/badge/chat-on%20matrix-blue.svg)](https://matrix.to/#/#nheko:matrix.org)
[![License: GPL v3](https://img.shields.io/badge/license-GPL%20v3-red.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![AUR: nheko-git](https://img.shields.io/badge/AUR-nheko--git-blue.svg)](https://aur.archlinux.org/packages/nheko-git)
2017-04-06 04:03:46 +03:00
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.
2017-04-09 03:54:39 +03:00
### Features
2017-04-06 04:03:46 +03:00
2017-10-01 19:24:35 +03:00
Most of the features you would expect from a chat application are missing right now
2017-10-11 17:46:23 +03:00
but we are getting close to a more feature complete client.
Specifically there is support for:
2017-12-21 16:10:04 +03:00
- Creating, joining & leaving rooms.
- Sending & receiving invites.
- Sending & receiving files and emoji (inline widgets for images, audio and file messages).
2017-11-06 01:51:59 +03:00
- Typing notifications.
2017-12-21 16:10:04 +03:00
- Light, Dark & System themes.
2017-04-06 04:03:46 +03:00
2017-05-09 22:42:32 +03:00
### Installation
2017-12-21 16:10:04 +03:00
There are continuous nightly releases [here](https://github.com/mujx/nheko/releases/tag/nightly) for Linux ([AppImage](https://appimage.org/)), Mac and Windows.
2017-11-06 01:51:59 +03:00
2017-05-09 22:42:32 +03:00
#### Arch Linux
```bash
2017-07-29 12:23:27 +03:00
pacaur -S nheko-git
```
2017-10-11 17:46:23 +03:00
#### Fedora
```bash
sudo dnf copr enable xvitaly/matrix
sudo dnf install nheko
```
#### Gentoo Linux
```bash
2017-07-29 12:23:27 +03:00
sudo layman -a matrix
sudo emerge -a nheko
2017-05-09 22:42:32 +03:00
```
### Build Requirements
2017-04-06 04:03:46 +03:00
- Qt5 (5.7 or greater). Qt 5.7 adds support for color font rendering with
Freetype, which is essential to properly support emoji.
2017-04-10 02:28:06 +03:00
- CMake 3.1 or greater.
2017-07-29 12:23:27 +03:00
- [LMDB](https://symas.com/lightning-memory-mapped-database/).
2017-04-10 02:28:06 +03:00
- A compiler that supports C++11.
- Clang 3.6 (or greater).
2017-12-03 13:22:48 +03:00
- GCC 4.9.4 (or greater).
2017-04-06 04:03:46 +03:00
2017-12-21 16:10:04 +03:00
#### Linux
If you don't want to install any external dependencies, you can generate an AppImage locally using docker.
```bash
make docker-app-image
```
2017-04-09 03:54:39 +03:00
##### Arch Linux
2017-04-06 04:03:46 +03:00
```bash
sudo pacman -S qt5-base qt5-tools qt5-multimedia cmake gcc fontconfig lmdb
2017-04-06 04:03:46 +03:00
```
##### Gentoo Linux
```bash
2017-07-29 12:23:27 +03:00
sudo emerge -a ">=dev-qt/qtgui-5.7.1" media-libs/fontconfig
```
2017-07-29 12:23:27 +03:00
##### Ubuntu (e.g 14.04)
2017-04-10 02:28:06 +03:00
```bash
sudo add-apt-repository ppa:beineri/opt-qt592-trusty
2017-07-29 12:23:27 +03:00
sudo add-apt-repository ppa:george-edison55/cmake-3.x
sudo apt-get update
sudo apt-get install -y qt59base qt59tools qt59multimedia cmake liblmdb-dev
2017-04-10 02:28:06 +03:00
```
2017-04-06 04:03:46 +03:00
To build on Ubuntu 14.04 Trusty out-of-the-box requires using Clang 3.6 instead of GCC:
```bash
sudo apt-get install clang-3.6
export CC=clang-3.6 CXX=clang++-3.6
```
On Ubuntu 14.04 Trusty, it's possible to use GCC 4.9.4+, but it is not recommended, because it requires installing GCC packages from third-party PPAs. Later versions of Ubuntu that come with GCC 4.9.4+ should work with GCC out-of-the-box.
##### OSX (Xcode 8 or later)
2017-04-10 02:28:06 +03:00
```bash
2017-07-29 12:23:27 +03:00
brew update
brew install qt5 lmdb
2017-04-10 02:28:06 +03:00
```
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)
2017-04-10 02:28:06 +03:00
### Building
2017-07-29 12:23:27 +03:00
Clone the repo with its submodules
```bash
git clone --recursive https://github.com/mujx/nheko
```
or
```bash
git clone https://github.com/mujx/nheko
cd nheko
git submodule update --init --recursive
2017-07-29 12:23:27 +03:00
```
2017-12-21 16:10:04 +03:00
and then run
2017-07-29 12:23:27 +03:00
```bash
2017-12-21 16:10:04 +03:00
make release
```
The `nheko` binary will be located in the `build` directory.
2017-04-06 04:03:46 +03:00
2017-11-06 01:51:59 +03:00
#### Nix
Download the repo as mentioned above and run
```bash
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`
2017-04-09 03:54:39 +03:00
### Contributing
2017-04-06 04:03:46 +03:00
Any kind of contribution to the project is greatly appreciated. You are also
encouraged to open feature request issues.
2017-04-09 03:54:39 +03:00
### Screens
2017-04-06 04:03:46 +03:00
Here is a screen shot to get a feel for the UI, but things will probably change.
2017-12-21 16:10:04 +03:00
![nheko](https://dl.dropboxusercontent.com/s/umojysx3gv80qs9/nheko-default-theme.png)
2017-04-06 04:03:46 +03:00
2017-04-19 19:38:39 +03:00
### Third party
- [Emoji One](http://emojione.com)
2017-10-15 22:08:51 +03:00
- [Font Awesome](http://fontawesome.io/)
2017-04-19 19:38:39 +03:00
- [Open Sans](https://fonts.google.com/specimen/Open+Sans)
2017-04-06 04:03:46 +03:00
[Matrix]:https://matrix.org
[Riot]:https://riot.im