Mercurial > libervia-backend
annotate README @ 817:c39117d00f35
jp: refactoring:
- imports from sat_frontends.jp instead of local imports
- added __init__.py
- commands now inherits from a base class: each base.CommandBase instance is a subcommand
- new arguments are added in CommandBase.add_parser_options methods, starting point si CommandBase.run or CommandBase.connected if a profile connection is needed
- commands are exported using a __commands__ variable at the top of the module
- sub-subcommand are easily added by using an other CommandBase instance as parent instead of using a Jp instance. In this case, the parent subcommand must be the one exported, and have a subcommands iterable (see cmd_file or cmd_pipe for examples).
- options which are often used (like --profile) are automatically added on demand (use_profile=True, use_progress=True)
- commands are automatically loaded when there are in a module named cmd_XXX
- restored --connect option
- restored progress bar
- restored getVersion bridge call on jp --version
- fixed file and pipe commands
- fixed forgotten translations
- fixed non SàT compliant docstrings
- better about/version dialog
author | Goffi <goffi@goffi.org> |
---|---|
date | Mon, 10 Feb 2014 13:44:09 +0100 |
parents | 4429bd7d5efb |
children | 5d08ab99e8dd |
rev | line source |
---|---|
581
78ca32cc0b51
CHANGELOG + version updates (yes, that's a release \o/)
Goffi <goffi@goffi.org>
parents:
578
diff
changeset
|
1 SàT v0.3.0 |
811 | 2 (c) Jérôme Poisson aka Goffi 2008, 2009, 2010, 2011, 2012, 2013, 2014 |
816
4429bd7d5efb
misc (README): updated Link Mauve and Dal contributions, moved Souliane as a main contributor
Goffi <goffi@goffi.org>
parents:
811
diff
changeset
|
3 (c) Adrien Cossa aka Souliane 2013, 2014 |
0 | 4 |
5 SàT is a XMPP (Jabber) client. | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 ** LICENSE ** | |
12 | |
13 SàT is free software: you can redistribute it and/or modify | |
480
2a072735e459
Licence modification: the full project is now under AGPL v3+ instead of GPL v3+
Goffi <goffi@goffi.org>
parents:
459
diff
changeset
|
14 it under the terms of the GNU Affero General Public License as published by |
0 | 15 the Free Software Foundation, either version 3 of the License, or |
16 (at your option) any later version. | |
17 | |
18 SàT is distributed in the hope that it will be useful, | |
19 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
480
2a072735e459
Licence modification: the full project is now under AGPL v3+ instead of GPL v3+
Goffi <goffi@goffi.org>
parents:
459
diff
changeset
|
21 GNU Affero General Public License for more details. |
0 | 22 |
480
2a072735e459
Licence modification: the full project is now under AGPL v3+ instead of GPL v3+
Goffi <goffi@goffi.org>
parents:
459
diff
changeset
|
23 You should have received a copy of the GNU Affero General Public License |
0 | 24 along with SàT. If not, see <http://www.gnu.org/licenses/>. |
25 | |
26 | |
27 | |
28 It is currently in a very alpha stage, and absolutely not usable for everyday use, use at your own risks ! | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 ** WTF ? ** | |
35 SàT is a XMPP (Jabber) client, made on a daemon/frontend architecture. Its aim is not only to be an instant messagery client: XMPP offer a lot more, and differents tools will come in the future. | |
36 | |
37 For the moment, the frontends are: | |
38 | |
39 * wix: a wxwidget frontend, the main graphical frontend | |
181 | 40 * primitivus: a console interface client, for screen lovers |
0 | 41 * jp: the command line toolkit. The tool for geeks by geeks |
348 | 42 * libervia: the web frontend. It's in a different package, check libervia on the wiki: http://wiki.goffi.org/wiki/Libervia |
0 | 43 |
44 other frontends planed in the near future: | |
45 | |
46 * a KDE 4 frontend, as KDE is my main desktop environment | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 ** How to use it ? ** | |
53 | |
24
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
54 For installation instructions, please read the file "INSTALL". |
0 | 55 |
238
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
56 A wiki is available online (http://wiki.goffi.org), in french and english so far (I would appreciate any help for other languages). You can also have a look at the bottom of this files (in contact section) for other availables websites. |
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
57 |
24
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
58 SàT is really at an early dev stage, so it's maybe the buggiest software you have ever seen, and there are for the moment absolutely nothing to ease the installation and use (but it will be the case ASAP, one of the goal of the project is the ease of use). |
0 | 59 There will probably be a wiki doc in the future. |
60 | |
61 | |
62 | |
63 | |
64 | |
65 ** Misc ** | |
66 | |
626
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
67 To use SàT, you need to have D-Bus daemon launched (http://www.freedesktop.org/wiki/Software/dbus/). If you use X Window, it should already be launched. If your are on a terminal environment without X11 (e.g. on a server) you may have to launch it. You can launch a daemon using the following command: |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
68 $ eval `dbus-launch --sh-syntax` |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
69 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
70 Be careful to use the same environment variables if you start a new session. |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
71 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
72 I personnaly use the following script to do that automaticaly: |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
73 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
74 --- /usr/local/bin/dbus-launch.sh --- |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
75 #!/bin/sh |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
76 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
77 DBUS_PATH="/tmp/.dbus.`whoami`" |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
78 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
79 if [ ! -e $DBUS_PATH ]; then |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
80 dbus-launch --sh-syntax > $DBUS_PATH |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
81 chmod 400 $DBUS_PATH |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
82 fi |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
83 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
84 cat $DBUS_PATH |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
85 --- end of /usr/local/bin/dbus-launch.sh --- |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
86 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
87 You can launch this script by putting at the end of your .zshrc (or whatever you're using): |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
88 eval `/usr/local/bin/dbus-launch.sh` |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
89 |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
90 -- |
190ccc6dc36c
doc: added instructions to launch D-Bus on a terminal environment, as requested in bug 27.
Goffi <goffi@goffi.org>
parents:
614
diff
changeset
|
91 |
587
952322b1d490
Remove trailing whitespaces.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
581
diff
changeset
|
92 You can find Primitivus shortcuts on the wiki: |
348 | 93 http://wiki.goffi.org/wiki/Primitivus |
94 | |
0 | 95 -- |
96 | |
97 SàT is the acronym (yes another one :( ) in tribute to the song Salut à Toi from the Bérurier Noir band. I recommand also the excelent cover from Les Ogres de Barback. | |
181 | 98 jp stands for "Jabber coPy" or "JumP". If you look well, you can also find my initials ;) |
99 Primitivus is based on Urwid, and, according to their FAQ, "ur" is a german prefix for "ancestral or primal" (primitivus is latin word) | |
0 | 100 wix come of course from the WX of wxwidgets and just sound cool :). |
101 | |
102 | |
31 | 103 ** /!\ Privacy warning /!\ ** |
0 | 104 |
31 | 105 To make setup easier, SàT ask my website (http://www.goffi.org) the external ip address of client. So a request is made to this page: http://www.goffi.org/sat_tools/get_ip.php . |
533
52ab19ea940e
misc: added informations on Apache logs in README's privacy warning
Goffi <goffi@goffi.org>
parents:
482
diff
changeset
|
106 The IP will appear in my private Apache logs (in the same way as IP used to download the software), which are automatically saved, but will not be used. Future releases will probably come with a warning about this and an easy way to avoid it. |
0 | 107 |
108 | |
109 ** Credit ** | |
110 | |
181 | 111 A big big thank to the authors/contributors of... |
112 | |
0 | 113 proxy65: |
114 SàT (plugin_xep_0065) use nearly all the code from proxy65 (http://code.google.com/p/proxy65/) wich was coded by Dave Smith (2002-2004) and maintained by Fabio Forno (2007-2008). | |
181 | 115 As the original MIT license allow, the code is reused and sublicensed until GPL v3 to follow the rest of the code. |
0 | 116 |
117 progressbar: | |
181 | 118 SàT (jp) use ProgressBar (http://pypi.python.org/pypi/progressbar/2.2), a class coded by Nilton Volpato which allow the textual representation of progression. |
0 | 119 |
120 twisted: | |
348 | 121 SàT is heavily based on the twisted framework (http://twistedmatrix.com/trac/), a very great tool which offer a lot of protocols management. There are too many contributors to name them here, so take a look on the website :). |
0 | 122 |
24
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
123 wokkel: |
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
124 SàT use a library with high level enhancements on top of twisted, which is called wokkel (http://wokkel.ik.nu). Lot of thanks to Ralph Meijer and all other contributors. |
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
125 |
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
126 wxWidgets & wxPython: |
181 | 127 The Wix frontend is made with wxWidgets (www.wxwidgets.org) and its python version wxPython (wxPython), which is a really handy UI toolkit who works on most popular platforms. It can be found on probably all major Gnu/Linux distributions. |
128 | |
129 Urwid: | |
130 Primitivus is based on Urwid (http://excess.org/urwid/) which saved me a lot of time. It's really a great library to easily make a sophisticated interface. | |
24
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
131 |
348 | 132 Pyjamas: |
133 Libervia is built with a Pyjamas (http://pyjs.org), a Google Web Toolkit port for python, including Python to Javascript compiler, and Pyjamas Desktop which allow to execute the same application on the desktop or throught a browser. It's really an amazing tool. | |
134 | |
135 Pyfeed and Xe: | |
136 SàT core and Libervia use pyfeed and xe (http://www.blarg.net/%7Esteveha/), 2 libraries made Steve R. Hastings really useful to parse/generate xml stuff as atom feeds. | |
137 | |
138 txJSON-RPC: | |
139 Libervia use txJSON-RPC (https://launchpad.net/txjsonrpc), a twisted library to communicate with the browser's javascript throught JSON-RPC | |
140 | |
578
28331ecf0a65
misc: README cleaning + added Mutagen to credits
Goffi <goffi@goffi.org>
parents:
576
diff
changeset
|
141 Mutagen: |
28331ecf0a65
misc: README cleaning + added Mutagen to credits
Goffi <goffi@goffi.org>
parents:
576
diff
changeset
|
142 Mutagen (https://code.google.com/p/mutagen/) is an audio metadata handling library, it's use by the radiocol plugin. |
28331ecf0a65
misc: README cleaning + added Mutagen to credits
Goffi <goffi@goffi.org>
parents:
576
diff
changeset
|
143 |
322
2b9b6b6ec717
README: fixed paths, and added personnal jid
Goffi <goffi@goffi.org>
parents:
245
diff
changeset
|
144 pictures found in frontends/src/wix/images/crystal/: |
2b9b6b6ec717
README: fixed paths, and added personnal jid
Goffi <goffi@goffi.org>
parents:
245
diff
changeset
|
145 These pictures come from Crystal clear, were made by Everaldo Coelho (www.everaldo.com) and YellowIcon (www.yellowicon.com). They are under LGPL V3 licence (see frontends/src/wix/images/COPYING.LESSER). |
24
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
146 Found on http://commons.wikimedia.org/wiki/File:Crystal_Clear_app_browser.png and http://commons.wikimedia.org/wiki/File:Crystal_Clear_app_cache.png |
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
147 |
348 | 148 pictures found in frontends/src/wix/images/cards/ and /public/cards in Libervia: |
322
2b9b6b6ec717
README: fixed paths, and added personnal jid
Goffi <goffi@goffi.org>
parents:
245
diff
changeset
|
149 The Tarot cards pictures come from the deck found on wikicommons (the script used to cut them is available at frontend/src/wix/images/split_card.sh), and available at http://upload.wikimedia.org/wikipedia/commons/8/8d/Tarotcards.jpg under Creative Commons BY-SA. The authors shown on the site are Piast and Svick. The splitted cards are, according to the license, available under the same conditions. |
181 | 150 |
151 the powerfull ImageMagick (http://www.imagemagick.org/) is used by the script written to split the previously named picture. | |
152 | |
0 | 153 and the others: |
181 | 154 and of course, nothing would be possible without Python (http://www.python.org/), Gnu and the Free Software Foundation (http://www.gnu.org, http://www.fsf.org/), the Linux Kernel (http://www.kernel.org/), and the coder of the tools I use like Vim (http://www.vim.org/), Mercurial (http://www.selenic.com/mercurial/wiki/), or all the KDE stuff (http://www.kde.org/ and of course http://amarok.kde.org/), and also XFCE (http://www.xfce.org), etc. Thanks thanks thanks, thank to everybody in the Free (Libre) chain for making a part of the dream. |
0 | 155 |
24
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
156 If I forgot any credit (and I probably have), please contact me (mail below) to fix it. |
61124cb82fb7
Updated README and licenses (for images), added installation instructions.
Goffi <goffi@goffi.org>
parents:
0
diff
changeset
|
157 |
482
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
158 ** Contributors ** |
0 | 159 |
482
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
160 Salut à Toi has received contributions from: |
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
161 |
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
162 - Adrien Vigneron <adrienvigneron@mailoo.org>: huge work on Libervia's CSS, SàT Logo (the mascot is its work), and Quiz game graphisms. He's friendly and talented, his work is really appreciated. |
0 | 163 |
482
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
164 - Xavier Maillard <xavier@maillard.im>: bugs fixes. He's following the project for a while, maybe a future frontend contributor ? |
0 | 165 |
816
4429bd7d5efb
misc (README): updated Link Mauve and Dal contributions, moved Souliane as a main contributor
Goffi <goffi@goffi.org>
parents:
811
diff
changeset
|
166 - Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>: bugs fixes, Libervia's notification, Libervia as a twisted application plugin. A guy always around XMPP projects, he plan to work on a non D-Bus bridge. |
482
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
167 |
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
168 - Matthieu Rakotojaona <matthieu.rakotojaona@gmail.com>: English translation of the social contract. A great quality translation ! |
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
169 |
614
bef0f893482f
misc: added Thomas Preud'homme to contributors + a thanks message to maintainers =)
Goffi <goffi@goffi.org>
parents:
587
diff
changeset
|
170 - Thomas Preud'homme <robotux@debian.org>: bugs fixes. He's also one the maintainer of the Debian package. |
bef0f893482f
misc: added Thomas Preud'homme to contributors + a thanks message to maintainers =)
Goffi <goffi@goffi.org>
parents:
587
diff
changeset
|
171 |
816
4429bd7d5efb
misc (README): updated Link Mauve and Dal contributions, moved Souliane as a main contributor
Goffi <goffi@goffi.org>
parents:
811
diff
changeset
|
172 - Dal <kedals0@gmail.com>: profiles management, argparse refactoring in jp |
658 | 173 |
482
e0d1eed4a46b
misc: updated README with contributors
Goffi <goffi@goffi.org>
parents:
480
diff
changeset
|
174 Many thanks to them. |
0 | 175 |
614
bef0f893482f
misc: added Thomas Preud'homme to contributors + a thanks message to maintainers =)
Goffi <goffi@goffi.org>
parents:
587
diff
changeset
|
176 A big thanks also to all the maintainers of SàT packages |
bef0f893482f
misc: added Thomas Preud'homme to contributors + a thanks message to maintainers =)
Goffi <goffi@goffi.org>
parents:
587
diff
changeset
|
177 |
0 | 178 ** Contact ** |
179 | |
322
2b9b6b6ec717
README: fixed paths, and added personnal jid
Goffi <goffi@goffi.org>
parents:
245
diff
changeset
|
180 You can contact me on goffi@goffi.org (e-mail) or goffi@jabber.fr (jid) |
238
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
181 You'll find the latest version and other stuffs on my *.goffi.org websites: |
576
a60dd719e048
misc: added presentation website to README
Goffi <goffi@goffi.org>
parents:
572
diff
changeset
|
182 - presentation (sat.goffi.org) the project presentation site |
238
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
183 - wiki (wiki.goffi.org), in french & english so far |
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
184 - ftp (ftp.goffi.org) for the latest version, or previous ones (and other projects) |
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
185 - blog (www.goffi.org) for latest news (in french) |
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
186 - bugtracker (bugs.goffi.org) to report any problem or give suggestions |
83d2bc0abf2a
version, README, CHANGELOG and INSTALL updates
Goffi <goffi@goffi.org>
parents:
228
diff
changeset
|
187 - various mailing lists (lists.goffi.org) are about to be created |
0 | 188 |
189 | |
190 | |
191 This software is dedicated to Roger Poisson. | |
57 | 192 |