You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jeremy Latt 0874692aa8 send proper replies for cap protocol 10 years ago
irc send proper replies for cap protocol 10 years ago
.gitignore remove unnecessary ignores 10 years ago
LICENSE MIT license 10 years ago
README.md readme 10 years ago
config.json add comments explaining config file 10 years ago
ergonomadic.go properly persist channels 10 years ago

README.md

Ergonomadic

Ergonomadic is an IRC daemon written from scratch in Go. Pull requests and issues are welcome.

Some Features

  • follows the RFC where possible
  • JSON-based configuration
  • server password
  • channels with many standard modes
  • IRC operators
  • TLS support (but better to use stunnel with proxy protocol)
  • haproxy PROXY protocol header for hostname setting
  • passwords stored in bcrypt format
  • channels that persist between restarts (+P)

Why?

I wanted to learn Go.

What’s with the name?

“Ergonomadic” is an anagram of “Go IRC Daemon”.

Installation

go get
go install
ergonomadic -conf '/path/to/config.json' -initdb

Configuration

See the example config.json. Passwords are base64-encoded bcrypted byte strings. You can generate them with the genpasswd subcommand.

ergonomadic -genpasswd 'hunter21!'

Running the Server

ergonomadic -conf '/path/to/config.json'

Helpful Documentation