name mode size
examples 040000
forbi 040000
logo 040000
scripts 040000
.gitignore 100644 0 kb
COPYING.txt 100644 34 kb 100644 0 kb
README.txt 100644 5 kb 100755 1 kb
===== forbi ===== forbi is a TCP-based communication tool with PKCS#1 OAEP RSA encryption. It consists of a server and a client. The server keeps track of online users and forwards messages from clients to other clients. It is easy to configure what the forbi client should do when it receives a message. Its default action is to show it in a small window. forbi is designed to be both a secure message sender and a "pre-chat" message mechanism. If you want one of your friends to join an IRC channel, for example, you simply send him a message:: $ forbi-send 'Mr. Spock' 'Come to #thechannel now!' (Note that this will only work if both you and your friend have forbi clients running.) Because your friend has his forbi client configured in a way that works best for him (perhaps he has configured his client to run a program that makes a lot of noise when he receives a message, or maybe something else), he is sure to notice your message. License ======= forbi is free software under the terms of the GNU Affero General Public License version 3 (or any later version). This is version 0.1.0 of the program. The libraries used by forbi are AGPL-compatible. Installing ========== Way #1 ------ Just run this (requires that you have python-setuptools installed):: # easy_install forbi Way #2 ------ Get the newest version of forbi at or at Extract the downloaded file and run this in a terminal:: # python install Dependencies ============ Python 2.6 is required. Python 3.x cannot be used because at least one of the required modules requires Python 2.x. ``m2crypto`` + Web address: + License: Modified BSD license + Installing: ``$ sudo apt-get install python-m2crypto`` (or something similar) ``dbus`` + Web address: + License: Expat license + Installing: ``$ sudo apt-get install python-dbus`` (or something similar) ``gobject`` + Web address: + License: LGPL 2.1+ + Installing: ``$ sudo apt-get install python-gobject`` (or something similar) ``tk`` + Web address: + License: Python Software Foundation License + Installing: ``$ sudo apt-get install python-tk`` (or something similar) Optional extras --------------- If present, forbi will also use these Python modules: ``termcolor`` + Web address: + License: GPLv3+ + Installing: ``$ sudo easy_install termcolor`` Note that ``termcolor`` is included with forbi, so you don't really have to install it. ``setproctitle`` + Web address: + License: New BSD License + Installing: ``$ sudo easy_install setproctitle`` Using ===== To see a list of forbi's command-line options, run ``forbi --help``. As a client ----------- The forbi client can only be used together with a forbi server. If you don't know of anyone with a forbi server, you can run the server on the same computer as your client. In this case, the host address you must give the forbi client is ``localhost``. The client will run just fine with no command-line arguments. To start it, just run ``forbi``. When it is up and running, you can send commands to it with ``forbi-send``. To see what commands exist and what arguments they require, run ``forbi-send --help``. See the ``examples/`` directory for simple message receival scripts. As a server ----------- It is equally easy to run forbi as a server. The simplest way is to run ``forbi -s``. Be aware that while data transportation in forbi is secure, protection against overflooding is non-existent. Anyone can register as a user on a forbi server, and there are no limits (except for those imposed by the underlying system) on how many clients can be connected to the server at the same time. In general ---------- forbi works by sending commands back and forth between server and clients. These commands are not at all frozen and could very well change in any eventual new releases. There are no detailed descriptions of how the responses to commands should be, but it works for now. forbi supports adjusting settings using a config file. To see an example of such a config file, take a look at ``forbi.conf`` in the ``examples/`` directory of this distribution. The homepage for forbi is at Developing ========== forbi is written in Python and uses Git for branches. To get the latest branch, get it from like this:: $ git clone git:// Bugs can be reported at (address of sole developer) This document ============= Copyright (C) 2010 Niels Serup Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.