mcxhub

command module
v0.0.0-...-2b5d22d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 30, 2017 License: BSD-2-Clause Imports: 8 Imported by: 0

README

MCXHUB

Its an IRC server.

It has a built-in websocket webchat served off a minimalistic web server.

IRC

Features and quirks:

  • You can log into channels and also chat with others (yey!).
  • Basic channel functions you would expect, such as chanops and topic. But no voice. Because fuck voice.
  • There are anonymous and regular channels. Anonymous channels have names that begins with + instead of #. Setting mode +A in #-channels merges them.
  • Filters and rejects Client To Client-Protocol (CTCP) commands. CTCP can be used to query users about the client software they use, or to trick users into revealing their IP addresses for sending/receiving files.
  • Silently translates NOTICE and SQUERY into PRIVMSG. This means that there is no difference between users, bots and services. They are all treated equally - which I think actually makes things easier.
  • Accepts at most 20 arguments for all commands. RFC2812 says maximum is 3.
  • Somewhat RFC2812-compliant, when its not blatantly violating the standards.
  • Very basic spam protection.

Web

Features and quirks:

  • Easy to turn the http server off.
  • Cute minimal default frontpage that you can easily replace.
  • Really simple static file sharing (in the directory ./web/fs/)
  • IRC over WebSockets
    • ws://yourserver:webport/api/ircsocket - One IRC message per frame and auto-newlines.
    • ws://yourserver:webport/api/rawircsocket - Transports real, raw IRC, as if it was a TCP-stream.
  • A JavaScript IRC client.

It is quite easy to move the irc client off the web server and just have nginx or whatever proxy the websocket.

Roadmap for the future

  • Remove everything except the websocket from the web server
  • Try to make this more minimalist by shaving off features that no one needs

Setup

If you want to run MCXHUB, do this:

  • Build it from source (see above)
  • Create a directory somewhere. Lets call it D.
  • Copy the mcxhub.conf, MOTD and OPERS files from the source and put them in D. Read them and modify them!
  • Copy the directory "web" into D. Optionally modify web/index.html. You can do exactly whatever you want with all files in web/fs/, but web/index.html NEEDS to be present.
  • Goto D and run mcxhub from inside that directory. It expects a lot of files to be in the current working directory.
  • Done! You can now connect to the IRC server at localhost:6667, and the web server listens at localhost:6502. (Unless you changed the ports it should listen to in the mcxhub.conf file.)

License

Simple 2-clause BSD.

Author

Kalle Vedin (kalle.vedin@fripost.org)

Documentation

Overview

Community for Tor and I2P. IRC and web server built for anonymity.

Directories

Path Synopsis
Configuration files, passwords, etc
Configuration files, passwords, etc
IRC server
IRC server
Webserver for mcxhub
Webserver for mcxhub

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL