view README @ 858:660b3f5b6c78

plugins groupblog, XEP-0277: attempt to clarify the code for the comments handling: - add or update some methods docstrings - add GroupBlog.__fillCommentsElement to factorize the code responsible to build the comments link - do not mix up attributes names between the item own service/node and the comments service/node
author souliane <souliane@mailoo.org>
date Fri, 14 Feb 2014 21:24:31 +0100
parents 4429bd7d5efb
children 5d08ab99e8dd
line wrap: on
line source

SàT v0.3.0
(c) Jérôme Poisson aka Goffi 2008, 2009, 2010, 2011, 2012, 2013, 2014
(c) Adrien Cossa aka Souliane 2013, 2014

SàT is a XMPP (Jabber) client.





** LICENSE **

SàT is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

SàT is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with SàT.  If not, see <http://www.gnu.org/licenses/>.



It is currently in a very alpha stage, and absolutely not usable for everyday use, use at your own risks !





** WTF ? **
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.

For the moment, the frontends are:

* wix: a wxwidget frontend, the main graphical frontend
* primitivus: a console interface client, for screen lovers
* jp: the command line toolkit. The tool for geeks by geeks
* libervia: the web frontend. It's in a different package, check libervia on the wiki: http://wiki.goffi.org/wiki/Libervia

other frontends planed in the near future:

* a KDE 4 frontend, as KDE is my main desktop environment





** How to use it ? **

For installation instructions, please read the file "INSTALL".

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.

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).
There will probably be a wiki doc in the future.





** Misc **

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:
$ eval `dbus-launch --sh-syntax`

Be careful to use the same environment variables if you start a new session.

I personnaly use the following script to do that automaticaly:

--- /usr/local/bin/dbus-launch.sh ---
#!/bin/sh

DBUS_PATH="/tmp/.dbus.`whoami`"

if [ ! -e $DBUS_PATH ]; then
        dbus-launch --sh-syntax > $DBUS_PATH
        chmod 400 $DBUS_PATH
fi

cat $DBUS_PATH
--- end of /usr/local/bin/dbus-launch.sh ---

You can launch this script by putting at the end of your .zshrc (or whatever you're using):
eval `/usr/local/bin/dbus-launch.sh`

--

You can find Primitivus shortcuts on the wiki:
http://wiki.goffi.org/wiki/Primitivus

--

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.
jp stands for "Jabber coPy" or "JumP". If you look well, you can also find my initials ;)
Primitivus is based on Urwid, and, according to their FAQ, "ur" is a german prefix for "ancestral or primal" (primitivus is latin word)
wix come of course from the WX of wxwidgets and just sound cool :).


** /!\ Privacy warning /!\ **

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 .
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.


** Credit **

A big big thank to the authors/contributors of...

proxy65:
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).
As the original MIT license allow, the code is reused and sublicensed until GPL v3 to follow the rest of the code.

progressbar:
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.

twisted:
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 :).

wokkel:
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.

wxWidgets & wxPython:
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.

Urwid:
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.

Pyjamas:
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.

Pyfeed and Xe:
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.

txJSON-RPC:
Libervia use txJSON-RPC (https://launchpad.net/txjsonrpc), a twisted library to communicate with the browser's javascript throught JSON-RPC

Mutagen:
Mutagen (https://code.google.com/p/mutagen/) is an audio metadata handling library, it's use by the radiocol plugin.

pictures found in frontends/src/wix/images/crystal/:
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).
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

pictures found in frontends/src/wix/images/cards/ and /public/cards in Libervia:
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.

the powerfull ImageMagick (http://www.imagemagick.org/) is used by the script written to split the previously named picture.

and the others:
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.

If I forgot any credit (and I probably have), please contact me (mail below) to fix it.

** Contributors **

Salut à Toi has received contributions from:

- 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.

- Xavier Maillard <xavier@maillard.im>: bugs fixes. He's following the project for a while, maybe a future frontend contributor ?

- 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.

- Matthieu Rakotojaona <matthieu.rakotojaona@gmail.com>: English translation of the social contract. A great quality translation !

- Thomas Preud'homme <robotux@debian.org>: bugs fixes. He's also one the maintainer of the Debian package.

- Dal <kedals0@gmail.com>: profiles management, argparse refactoring in jp

Many thanks to them.

A big thanks also to all the maintainers of SàT packages

** Contact **

You can contact me on goffi@goffi.org (e-mail) or goffi@jabber.fr (jid)
You'll find the latest version and other stuffs on my *.goffi.org websites:
- presentation (sat.goffi.org) the project presentation site
- wiki (wiki.goffi.org), in french & english so far
- ftp (ftp.goffi.org) for the latest version, or previous ones (and other projects)
- blog (www.goffi.org) for latest news (in french)
- bugtracker (bugs.goffi.org) to report any problem or give suggestions
- various mailing lists (lists.goffi.org) are about to be created



This software is dedicated to Roger Poisson.