README 2.53 KB
Newer Older
Romain Bignon's avatar
Romain Bignon committed
1 2 3 4
        Minbif - IRC instant messaging gateway
        **************************************

1. Abstract
Romain Bignon's avatar
Romain Bignon committed
5
===========
Romain Bignon's avatar
Romain Bignon committed
6 7 8 9 10

Minbif aims to use the libpurple library from the Pidgin project to provide an
IRC-friendly instant messaging client.

2. Installation
Romain Bignon's avatar
Romain Bignon committed
11
===============
Romain Bignon's avatar
Romain Bignon committed
12 13

You can provide several configuration options to make:
14 15 16 17
* PREFIX=path — Installation prefix (default=/usr/local)
* MAN_PREFIX=path — Manpages installation prefix (default=$PREFIX/share/man/man8)
* CONF_PREFIX=path — Configuration files installation prefix (default=$PREFIX/etc/minbif)
* DOC_PREFIX=path — Documentation files installation prefix (default=$PREFIX/share/doc/minbif)
Romain Bignon's avatar
Romain Bignon committed
18
* ENABLE_MINBIF=(ON|OFF) — Compile minbif (default=ON).
19
* ENABLE_IMLIB=(ON|OFF) — Use imlib2 (default=ON).
Romain Bignon's avatar
Romain Bignon committed
20 21 22 23
* ENABLE_CACA=(ON|OFF) — Do not use libcaca features to display icons (default=ON).
* ENABLE_VIDEO=(ON|OFF) — Enable the video viewer (default=OFF). Depends on ENABLE_CACA.
* ENABLE_PLUGIN=(ON|OFF) — Compile libpurple's plugins (default=OFF).
* ENABLE_PAM=(ON|OFF) — Compile with PAM support (default=OFF).
24
* ENABLE_TLS=(ON|OFF) — Compile with TLS support (default=OFF).
Romain Bignon's avatar
Romain Bignon committed
25
* DEBUG=(ON|OFF) — Compile with debug (default=OFF).
Romain Bignon's avatar
Romain Bignon committed
26 27

Run:
28
$ make [PREFIX=path] [MAN_PREFIX=path] [CONF_PREFIX=path] [DOC_PREFIX=path]
Romain Bignon's avatar
Romain Bignon committed
29
       [ENABLE_MINBIF=ON|OFF] [ENABLE_CACA=ON|OFF] [ENABLE_VIDEO=ON|OFF]
30
       [ENABLE_PLUGIN=ON|OFF] [ENABLE_PAM=ON|OFF] [ENABLE_TLS=ON|OFF]
Romain Bignon's avatar
Romain Bignon committed
31
       [DEBUG=ON|OFF]
Romain Bignon's avatar
Romain Bignon committed
32

33 34
To install it use:
$ make install
Romain Bignon's avatar
Romain Bignon committed
35 36

3. Configuration
Romain Bignon's avatar
Romain Bignon committed
37
================
Romain Bignon's avatar
Romain Bignon committed
38 39 40

Copy the minbif.conf file and edit it.

Romain Bignon's avatar
Romain Bignon committed
41 42 43 44
3.1 Inetd
---------

Run:
Romain Bignon's avatar
Romain Bignon committed
45
# update-inetd --add '6667 stream tcp nowait username /usr/sbin/tcpd /usr/bin/minbif /etc/minbif/minbif.conf'
Romain Bignon's avatar
Romain Bignon committed
46

Romain Bignon's avatar
Romain Bignon committed
47 48
Then, restart inetd, and use an IRC client to connect to minbif.

Romain Bignon's avatar
Romain Bignon committed
49 50 51 52 53 54 55
3.2 Daemon Fork
---------------

Set the irc/type parameter in configuration to 2 (as daemon fork) and write a
irc/daemon block to set the address and port to bind.

Now, run the minbif daemon:
Romain Bignon's avatar
Romain Bignon committed
56 57
# minbif /path/to/minbif.conf

Romain Bignon's avatar
Romain Bignon committed
58 59 60 61
A new forked process will be created every time a new connection is established.
Note: there isn't (yet?) any fork limit. Your system is vulnerable to a fork
bomb, so set the RLIMIT_NPROC ulimit parameter to prevent that way.

Romain Bignon's avatar
Romain Bignon committed
62
4. Documentation
Romain Bignon's avatar
Romain Bignon committed
63
================
Romain Bignon's avatar
Romain Bignon committed
64 65

You can see an online documentation on the Minbif website at
Romain Bignon's avatar
Romain Bignon committed
66
http://minbif.im
Romain Bignon's avatar
Romain Bignon committed
67 68 69 70 71 72 73 74

5. Support
==========

A problem? A suggestion?
- Ask your question on the #minbif channel on the FreeNode IRC network.
- Subscribe to the mailing list at http://lists.symlink.me/mailman/listinfo/minbif
- Send an email to a developer (see the AUTHORS file).