Skip to main content

A IRC bouncer

Project description

# ircb

A versatile IRC bouncer.

## Requirements

- Python3.5
- Pip3.5


## Setup

- Install dependencies:

``[sudo] pip3.5 install -r requirements.txt``

- Copy and extend

``ircb/config/default_settings.py``, as needed, to a custom location. say, ``/etc/ircb/settings.py``.

- [OPTIONAL] ``export IRCB_SETTINGS=<path to your custom settings file>``

- Install the project as a development dep

``python3.5 setup.py develop``

## Setup for development

- Install system dependencies:

`` sudo dnf install python3-devel openssl-devel redis``

`` sudo pip install virtualenvwrapper``

- Make `python3` virtualenv:

``mkvirtualenv --python=/usr/bin/python3 python3``

- Activate virtualenv:

``workon python3``

- Install dependencies:

``pip3 install -r requirements.txt``

- Install the project as development dep:

``python3.5 setup.py develop``

- Make sure `REDIS` is running:

``sudo systemctl start redis.service``

- Now, you need to run ``ircb stores``:

``ircb run stores``

Continue with `` Setting up data``

## Setting up data
- Creating a user:
```
ircb users create USERNAME EMAIL [PASSWORD]
```

- Creating a network for a user:
```
ircb networks create USER NETWORK_NAME HOST PORT NICK
```
You'll get an access token as an output of the above. Use this as
**server password** when configuring your IRC client to connect to ``ircb``.

## Running the app

### Quickstart
```
sudo ircb run allinone

```

Note: If you are using virtualenv `sudo` will not work this way, you need to
run:

```
sudo ~/.virtualenvs/python3/bin/ircb run allinone

```
### Advanced

You can run the various components of ``ircb``: ``stores``, ``bouncers`` as
different processes.

- Run stores as a different process: ``ircb run stores``
- Run bouncer: ``ircb run bouncer``
- Run web server: ``ircb run web``
- Run identd server: ``sudo ircb run identd``

## Connecting for IRC client

Now, you should be able to connect to ``ircb`` from your IRC client at:

- host/port: ``localhost/9000``

- server password: ``<your network access token>``

- IRC client should have the following settings enabled:

* Use SSL for all server on this network
* Accept invalid SSL certificate

### Configure HexChat

- Go to HexChat -> Network List

- Change the nick to the nick you have given while configuring network

- Under ``Network`` Click `Add` and name the server ``ircb``

- Click on `Edit` then `Add` and type `localhost/9000`

- Under ``Server`` tab check the ``SSL`` option mentioned above

- Enter the ``Server Password`` in `Password` field

- Close the dialog box and then connect to the network

Note: In case the problem persist try to ``restart`` ircb server

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ircb-0.3.0.tar.gz (34.8 kB view details)

Uploaded Source

File details

Details for the file ircb-0.3.0.tar.gz.

File metadata

  • Download URL: ircb-0.3.0.tar.gz
  • Upload date:
  • Size: 34.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ircb-0.3.0.tar.gz
Algorithm Hash digest
SHA256 6f4bba4ec8b5514d9151843cbbff2fa8151f111b4a71d211a68f0d5a14c1a65c
MD5 2dded03333b24afe0990e6eeda3270a9
BLAKE2b-256 eac80ec7389ce72e1d3f63e6d0c5e00a1ed5bf09918be954870efb60a598eb62

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page