README.md 3 KB
Newer Older
Andrea Schaefer's avatar
Andrea Schaefer committed
1
2
# Chatty

3
A libpurple messaging client
Andrea Schaefer's avatar
Andrea Schaefer committed
4
5
6
7
8
9
10


## Build and install

### Install dependencies

``` bash
11
sudo apt install git meson libgtk-3-dev libpurple-dev modemmanager libmxml-dev libxml2-dev libsqlite3-dev libgcrypt20-dev libhandy-0.0-dev libebook-contacts1.2-dev
Andrea Schaefer's avatar
Andrea Schaefer committed
12
13
```

14
15
16
17
Libhandy (libhandy-0.0-dev) is available in [PureOS][0] and  Debian's
[experimental distribution][1].  If you don't want to fetch it from there you
can [build it from souce][2].

18
19
### Build and install the SMS plugin
``` bash
20
git clone git@source.puri.sm:Librem5/purple-mm-sms.git
21
cd purple-mm-sms
22
23
24
make
make install
```
25

Andrea Schaefer's avatar
Andrea Schaefer committed
26
27
This can be skipped if SMS support is not needed.

28
29
30
31
32
33
34
35
36
37
### Build and install the 'carbons' plugin
Message synchronization between devices according to XEP-0280

``` bash
git clone https://github.com/gkdr/carbons.git
cd carbons
make
make install
```

38
### Build and install the 'lurch' plugin
39
Please go to the git page where you'll find information on how to build and use the
40
[lurch OMEMO plugin](https://github.com/gkdr/lurch)
41

42
43
This can be skipped if encrypted messaging is not needed.

44
45

### Build and install the 'purple-matrix' plugin
46
47
Please go to the git page where you'll find information on how to build and install the
[Matrix messenger plugin](https://github.com/matrix-org/purple-matrix)
48

49
50
51
52
53
54
55
56
This can be skipped if Matrix messaging is not needed.


### Build and install the 'purple-telegram' plugin
Please go to the git page where you'll find information on how to build and install the
[Telegram messenger plugin](https://github.com/majn/telegram-purple)

This can be skipped if Telegram messaging is not needed.
57
58


59
### Build Chatty
Andrea Schaefer's avatar
Andrea Schaefer committed
60
61
62
63
``` bash
meson build
ninja -C build
```
64

65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
## Commands

In a messaging conversation (except SMS conversations) the following commands can be used:

### lurch plugin

- '/lurch help': Displays a list with available commands.
- '/lurch uninstall': Uninstalls this device from OMEMO by removing its device ID from the devicelist.
- '/lurch blacklist add': Adds conversation partner to blacklist.
- '/lurch blacklist remove': Removes conversation partner from blacklist.
- '/lurch show id own': Displays this device's ID.
- '/lurch show id list': Displays this account's devicelist.
- '/lurch show fp own': Displays this device's key fingerprint.
- '/lurch show fp conv': Displays the fingerprints of all participating devices.
- '/lurch remove id <id>': Removes a device ID from the own devicelist.


### purple-mm-sms plugin

- '/mm-sms help': Displays a list with available commands.
- '/mm-sms status': Show modem status.


## XMPP account

If you don't have an XMPP account yet and want to subscribe to a service then please make sure that the server supports the following XEPs:

- XEP-0237: Roster Versioning
- XEP-0198: Stream Management
- XEP-0280: Message Carbons
- XEP-0352: Client State Indication
- XEP-0313: Message Archive Management
- XEP-0363: HTTP File Upload

99
100
101
[0]: http://software.pureos.net/search_pkg?term=libhandy-0.0-dev
[1]: https://packages.debian.org/search?keywords=libhandy-0.0-dev
[2]: https://source.puri.sm/Librem5/libhandy