Skip to content

setup first server

ElliNet13 (Phone) edited this page Sep 19, 2026 · 5 revisions

Setting up your first ElliNetIRCd server

This guide will teach you how to set up a ElliNetIRCd server.

  1. First we need to set up the folder, ElliNetIRCd uses files from the folder its ran from so its good to use a empty folder. Create a new folder and open a terminal in it.
  2. Create a Python venv to keep ElliNetIRCd from your other python packages. python -m venv .venv
  3. Activate the venv using the correct command for your OS and shell:
    • Linux source .venv/bin/activate
    • Windows Powershell .\.venv\Scripts\Activate.ps1
    • Windows CMD .venv\Scripts\activate.bat
    • Later if you want to leave the venv run deactivate
  4. Install ElliNetIRCd via pip pip install ellinetircd (to update use pip install --upgrade ellinetircd)
  5. After it is done installing, set your environment variables, depending on your OS and shell, it may be different:
    • This is what setting environment variables look like for Windows and Linux:
      • Windows Powershell uses $env:KEY="value"
      • Linux uses export KEY=value
      • You can also in Linux do it like this KEY=value python -m ellinetircd Environment variables to set:
    • And these are what you should set
      • Set HOST to where you want to host it, 0.0.0.0 to make it public and 127.0.0.1 for testing on your computer only.
      • Set LOGLEVEL to what type of logs you want to see, DEBUG enables some testing features and gives you everything that is happening and INFO is just what matters to a normal host. Recommended to use INFO and only use DEBUG if developing or having issues.
    • To see other env vars, use python -m ellinetircd --help.
  6. Start the server, everything required is all set up and you can now start the server using python -m ellinetircd.

Note

Having problems?

Check troubleshooting for help with issues.

Becoming a operator/admin

Operators have special permissions, do give yourself (or others) operator

Warning

User modes (like operator) were added in 1.4.0.dev2

  • Permanent operator:

    1. Open opers.yaml in any text editor (file is created on first run of ElliNetIRCd)
    2. Remove [] from after opers in the file
    3. Create a new line, type 4 spaces, a dash, another space, then your nickname you use on the server
    4. Reconnect to the server

    Example of what opers.yaml should look like after following the steps:

    version: 1
    opers:
        - ElliNet13
    
  • Temporary operator You must already be on a account with operator, then you can use /MODE friendnick +o and they will have operator until they reconnect. You can also use /MODE friendnick -o to remove operator from someone (if they are in opers.yaml it removes operator from them until they reconnect)

Registering your account

It is especially recommended to register when you become a operator. Check NickServ documentation for more details.

Warning

NickServ was added in version v1.4.0.dev3

Installing plugins

Warning

Only install plugins you trust. Plugins are not sandboxed and can do anything on your computer, especially with python.

Do not create issues on ElliNetIRCd for problems with plugins not included with ElliNetIRCd as I am no association with plugins not created by me and/or not in this project.

Installing plugins is easy, and these are the simple steps to install a plugin:

  1. Download the plugin (Officially supported languages are Python and Lua, plugins can add support for more languages.)
  2. In the folder where you run ElliNetIRCd, create a folder named plugins
  3. Put the plugins in the new folder
  4. Start the server again

ElliNetIRCd Wiki

Main

Server hosting guides

Plugin development help

End user guides and info

IRC Protocol Extensions

Community

Clone this wiki locally