annotate INSTALL @ 1265:e3a9ea76de35 frontends_multi_profiles

quick_frontend, primitivus: multi-profiles refactoring part 1 (big commit, sorry :p): This refactoring allow primitivus to manage correctly several profiles at once, with various other improvments: - profile_manager can now plug several profiles at once, requesting password when needed. No more profile plug specific method is used anymore in backend, instead a "validated" key is used in actions - Primitivus widget are now based on a common "PrimitivusWidget" classe which mainly manage the decoration so far - all widgets are treated in the same way (contactList, Chat, Progress, etc), no more chat_wins specific behaviour - widgets are created in a dedicated manager, with facilities to react on new widget creation or other events - quick_frontend introduce a new QuickWidget class, which aims to be as generic and flexible as possible. It can manage several targets (jids or something else), and several profiles - each widget class return a Hash according to its target. For example if given a target jid and a profile, a widget class return a hash like (target.bare, profile), the same widget will be used for all resources of the same jid - better management of CHAT_GROUP mode for Chat widgets - some code moved from Primitivus to QuickFrontend, the final goal is to have most non backend code in QuickFrontend, and just graphic code in subclasses - no more (un)escapePrivate/PRIVATE_PREFIX - contactList improved a lot: entities not in roster and special entities (private MUC conversations) are better managed - resources can be displayed in Primitivus, and their status messages - profiles are managed in QuickFrontend with dedicated managers This is work in progress, other frontends are broken. Urwid SàText need to be updated. Most of features of Primitivus should work as before (or in a better way ;))
author Goffi <goffi@goffi.org>
date Wed, 10 Dec 2014 19:00:09 +0100
parents 6e08ee45bf0a
children 0db0013c59dd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
885
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
1 You can install SàT automatically using easy_install or pip, and it is available in several GNU/Linux distributions. The full instructions are available on the wiki: http://wiki.goffi.org/wiki/Salut_%C3%A0_Toi
1202
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
2 Below is are installation instructions, but please check the wiki which may be more up-to-date.
885
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
3
587
952322b1d490 Remove trailing whitespaces.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents: 548
diff changeset
4 ***
885
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
5
1202
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
6 You can automatically install SàT and its dependencies using easy_install or pip. You will however need to install Python's headers (needed to build some packages), WxPython which is available in most Gnu/Linux distributions, PyGObject and developments version of libxml2 and libxslt (to compile lxml python library).
885
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
7
1202
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
8 NOTE: pyfeed and xe are mandatory dependencies, they should be on http://pypi.python.org (PYthon Package Index, the official repository for Python projects) and so being automatically installed; but they are not yet there (their author should do it soon), so you have to install them manually until then.
1203
6e08ee45bf0a misc: updated urls of pyxe an pyfeed
Matteo Cypriani <mcy@lm7.fr>
parents: 1202
diff changeset
9 You can download them respectively on http://home.avvanta.com/%7Esteveha/pyfeed-0.7.4.tar.gz and http://home.avvanta.com/%7Esteveha/xe-0.7.4.tar.gz, then decompress them and do « python setup.py install » on both.
1202
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
10 An other way is to use the (insecure) pip options --process-dependency-links and --allow-all-external when installing sat, options which will soon be (or already are) removed from pip.
1191
4c6bc3454780 misc: INSTALL note for pyfeed/xe
Goffi <goffi@goffi.org>
parents: 1100
diff changeset
11
4c6bc3454780 misc: INSTALL note for pyfeed/xe
Goffi <goffi@goffi.org>
parents: 1100
diff changeset
12
1202
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
13 The environment variable SAT_INSTALL customises the installation, it contains flags separated by spaces:
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
14 - "nopreinstall" skips all preinstallation checks
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
15 - "autodeb" automatically installs missing packages on Debian-based distributions
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
16 - "nox" disables installation of X-based packages (WxWidgets), this is useful for servers
885
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
17
1202
101c06fbda31 misc: fixed typos in README
Matteo Cypriani <mcy@lm7.fr>
parents: 1191
diff changeset
18 WxPython and PyGobject are automatically installed on Debian-based distributions if "autodeb" option is set. Indeed, on Debian-based distribution, you can type (with the root account):
885
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
19
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
20 # apt-get install python-pip python-dev libxml2-dev libxslt-dev
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
21 # SAT_INSTALL=autodeb pip install .
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
22
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
23 On a *buntu, same commands with sudo:
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
24
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
25 $ sudo apt-get install python-pip python-dev libxml2-dev libxslt-dev
1100
2be46f391cfa setup: SAT_INSTALL environment variable handles "clean" and "purge" options
souliane <souliane@mailoo.org>
parents: 885
diff changeset
26 $ sudo SAT_INSTALL=autodeb pip install .
885
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
27
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
28
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
29 After installing SàT, you need to install the media:
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
30
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
31 $ mkdir -p ~/sat/media/destination/path
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
32 $ cd ~/sat/media/destination/path
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
33 wget ftp://ftp.goffi.org/sat_media/sat_media.tar.bz2
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
34 tar -jxvf sat_media.tar.bz2
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
35
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
36 then, create a ~/.sat.conf file which contains:
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
37
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
38 ### sat.conf ###
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
39 [DEFAULT]
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
40 media_dir=~/sat/media/destination/path
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
41 ### end sat.conf ###
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
42
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
43 Of course, replace ~/sat/media/destination/path with the actual path you want to use.
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
44
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
45 You should now be able to launch sat:
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
46 - to launch the backend, enter
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
47 $ sat
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
48 - to stop the backend, enter:
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
49 $ sat stop
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
50 - to launch Primitivus, enter:
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
51 $ primitivus
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
52 then create a profile.
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
53 - to launch Wix, enter
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
54 $ wix
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
55 then create a profile.
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
56 - to use jp, follow its help:
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
57 $ jp --help
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
58
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
59 For Libervia, the web interface, check http://wiki.goffi.org/wiki/Libervia/en
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
60
c8a7019cd168 better INSTALL instructions
Goffi <goffi@goffi.org>
parents: 871
diff changeset
61 If you need help, come the SàT official XMPP room: sat@chat.jabberfr.org