Mercurial > libervia-backend
annotate doc/installation.rst @ 3913:944f51f9c2b4
core (xmpp): make `send` a blocking method, fix `sendMessageData` calls:
original `send` method is blocking, and it is used as such by Wokkel and thus can't be
changed to an async method easily. However, an Async method is necessary to have an async
trigger at the very end of the send workflow for end-to-end encryption. To workaround
that, `send` is an async method which call `a_send`, an async method which actually does
the sending. This way legacy method can still call `send` while `a_send` can be await
otherwise.
Fix calls to `sendMessageData`: the method now being an `async` one, `ensureDeferred` had
to be used in some calls.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 24 Sep 2022 16:31:39 +0200 |
parents | 4d333f249625 |
children | 3b72743b92db |
rev | line source |
---|---|
3022 | 1 .. _installation: |
2 | |
2946 | 3 ============ |
4 Installation | |
5 ============ | |
6 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
7 This are the instructions to install Libervia using Python. |
3505 | 8 Note that if you are using GNU/Linux, Libervia may already be present on your distribution. |
2946 | 9 |
3505 | 10 Libervia is made of one backend, and several frontends. To use it, the first thing to do is to install the backend. |
2946 | 11 |
3260
e9ecd133773b
doc (installation): updated instructions for backend
Goffi <goffi@goffi.org>
parents:
3022
diff
changeset
|
12 We recommand to use development version for now, until the release of 0.8. |
2946 | 13 |
14 Development version | |
15 ------------------- | |
16 | |
17 *Note for Arch users: a pkgbuild is available for your distribution on | |
18 AUR, check sat-xmpp-hg (as well as other sat-\* packages).* | |
19 | |
20 You can install the latest development version using pip. You need to | |
21 have the following dependencies installed first: | |
22 | |
3260
e9ecd133773b
doc (installation): updated instructions for backend
Goffi <goffi@goffi.org>
parents:
3022
diff
changeset
|
23 - Python 3 with development headers |
3383 | 24 - Python 3 "venv", which may already be installed with Python 3 |
2946 | 25 - Mercurial |
3383 | 26 - libcairo 2 with development header |
2946 | 27 - libjpeg with development headers |
28 - libgirepository 1.0 with development headers | |
29 - libdbus-1 with development headers | |
30 - libdbus-glib-1 with development headers | |
31 - libxml2 with development headers | |
32 - libxlt2 with development headers | |
33 - D-Bus x11 tools (this doesn't needs X11, it is just needed for dbus-launch) | |
34 - cmake | |
35 | |
36 On Debian and derivatives, you can get all this with following command:: | |
37 | |
3353
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
38 $ sudo apt-get install python3-dev python3-venv python3-wheel mercurial libxml2-dev libxslt-dev libcairo2-dev libjpeg-dev libgirepository1.0-dev libdbus-1-dev libdbus-glib-1-dev dbus-x11 cmake |
2946 | 39 |
3505 | 40 Now go in a location where you can install Libervia, for |
2946 | 41 instance your home directory:: |
42 | |
43 $ cd | |
44 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
45 And enter the following commands (here we install Libervia with SVG support, which is needed to |
3260
e9ecd133773b
doc (installation): updated instructions for backend
Goffi <goffi@goffi.org>
parents:
3022
diff
changeset
|
46 display SVG avatars on some frontends):: |
2946 | 47 |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
48 $ python3 -m venv libervia |
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
49 $ source libervia/bin/activate |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
50 $ pip install -U pip wheel |
3774
df836d6f9c8a
doc (installation): fix missing `hg clone` instructions
Goffi <goffi@goffi.org>
parents:
3563
diff
changeset
|
51 $ hg clone https://repos.goffi.org/libervia-backend |
df836d6f9c8a
doc (installation): fix missing `hg clone` instructions
Goffi <goffi@goffi.org>
parents:
3563
diff
changeset
|
52 $ cd libervia-backend |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
53 $ pip install -r requirements.txt |
2946 | 54 |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
55 Don't worry if you see the following message, Libervia should work anyway:: |
2946 | 56 |
57 Failed building wheel for pygobject | |
58 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
59 After installing Libervia, you need to install the media:: |
2946 | 60 |
61 $ cd | |
3776
4d333f249625
doc (installation): `sat_media` is now `libervia-media`
Goffi <goffi@goffi.org>
parents:
3774
diff
changeset
|
62 $ hg clone https://repos.goffi.org/libervia-media |
2946 | 63 |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
64 then, create the directory ``~/.config/libervia``:: |
3353
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
65 |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
66 $ mkdir -p ~/.config/libervia |
3353
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
67 |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
68 and the file ``~/.config/libervia/libervia.conf`` containing: |
2946 | 69 |
70 .. sourcecode:: cfg | |
71 | |
72 [DEFAULT] | |
3776
4d333f249625
doc (installation): `sat_media` is now `libervia-media`
Goffi <goffi@goffi.org>
parents:
3774
diff
changeset
|
73 media_dir = ~/libervia-media |
2946 | 74 |
3776
4d333f249625
doc (installation): `sat_media` is now `libervia-media`
Goffi <goffi@goffi.org>
parents:
3774
diff
changeset
|
75 Of course, replace ``~/libervia-media`` with the actual path you have used. |
2946 | 76 |
3260
e9ecd133773b
doc (installation): updated instructions for backend
Goffi <goffi@goffi.org>
parents:
3022
diff
changeset
|
77 You can check :ref:`configuration` for details |
2946 | 78 |
79 Usage | |
80 ===== | |
81 | |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
82 To launch the Libervia backend, enter:: |
2946 | 83 |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
84 $ libervia-backend |
2946 | 85 |
86 …or, if you want to launch it in foreground:: | |
87 | |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
88 $ libervia-backend fg |
2946 | 89 |
90 You can stop it with:: | |
91 | |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
92 $ libervia-backend stop |
2946 | 93 |
94 To know if backend is launched or not:: | |
95 | |
3563
267e4987b58b
doc: fix remaining SàT references/typos + add `libervia-cli` missing commands
Goffi <goffi@goffi.org>
parents:
3558
diff
changeset
|
96 $ libervia-backend status |
2946 | 97 |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
98 **NOTE**: if ``misc/org.libervia.Libervia.service`` is installed correctly (which should |
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
99 be done by during the installation), the backend is automatically launched when a frontend |
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
100 needs it. |
2946 | 101 |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
102 You can check that Libervia is installed correctly by trying jp (the backend need to be |
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
103 launched first, check below):: |
2946 | 104 |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
105 $ li --version |
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
106 Libervia CLI 0.8.0D « La Cecília » (rev 184c66256bbc [M] (default 2021-06-09 11:35 +0200) +524) Copyright (C) 2009-2021 Jérôme Poisson, Adrien Cossa |
2946 | 107 This program comes with ABSOLUTELY NO WARRANTY; |
108 This is free software, and you are welcome to redistribute it under certain conditions. | |
109 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
110 If you have a similar output, Libervia is working. |
2946 | 111 |
3353
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
112 .. note:: |
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
113 |
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
114 if you have the message ``/!\ D-Bus is not launched, please see README to see |
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
115 instructions on how to launch it`` that mean that the D-Bus service is not launched, this |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
116 usually happens when launching Libervia on a server, without graphic interface like X.org or |
3353
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
117 Wayland (in which case D-Bus service should be launcher automatically). |
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
118 |
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
119 As the message states, instructions on how to launch the service are given in the README |
3505 | 120 file of Libervia. |
3353
7726916c1ba6
doc: updated installation instructions
Goffi <goffi@goffi.org>
parents:
3260
diff
changeset
|
121 |
2946 | 122 Frontends |
123 ========= | |
124 | |
125 So far, the following frontends exist and are actively maintained: | |
126 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
127 Libervia Desktop (aka Cagou) |
2946 | 128 desktop/mobile (Android) frontend |
129 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
130 Libervia Web |
2946 | 131 the web frontend |
132 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
133 Libervia TUI (aka Primitivus) |
2946 | 134 Text User Interface |
135 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
136 Libervia CLI (aka jp or li) |
2946 | 137 Command Line Interface |
138 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
139 To launch Libervia TUI, just type:: |
2946 | 140 |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
141 $ libervia-tui |
2946 | 142 |
143 then create a profile (XMPP account must already exist). | |
144 | |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
145 To use Libervia CLI, follow its help (``li`` is a shortcut for ``libervia-cli``):: |
2946 | 146 |
3558
d8581c83fef3
doc (installation): update instruction to use requirements + fix name in a few places
Goffi <goffi@goffi.org>
parents:
3536
diff
changeset
|
147 $ li --help |
2946 | 148 |
149 | |
150 There are some other frontends: | |
151 | |
152 Bellaciao | |
153 based on Qt, a rich desktop frontend (currently on hold) | |
154 | |
155 Wix | |
156 former desktop frontend based on WxWidgets (deprecated with version 0.6.0) | |
157 | |
158 Sententia | |
159 Emacs frontend developed by a third party (development is currently stalled) |