2016-03-21 17:31:43 +00:00
|
|
|
# charybdis [![POSIX Build Status](https://travis-ci.org/charybdis-ircd/charybdis.svg?branch=master)](https://travis-ci.org/charybdis-ircd/charybdis) [![Windows Build Status](https://ci.appveyor.com/api/projects/status/is0obsml8xyq2qk7/branch/master?svg=true)](https://ci.appveyor.com/project/kaniini/charybdis/branch/master)
|
2015-02-25 02:32:08 +00:00
|
|
|
|
2017-02-28 05:31:32 +00:00
|
|
|
Charybdis was an IRCv3 server designed to be highly scalable. It implemented IRCv3.1 and some parts of IRCv3.2.
|
2016-01-23 19:52:57 +00:00
|
|
|
|
2017-02-28 05:31:32 +00:00
|
|
|
It is not meant to be used at all, but if you feel the need to do so, you should use it with an IRCv3-capable services
|
|
|
|
implementation such as [Atheme][atheme] or [Anope][anope].
|
2015-02-25 02:32:08 +00:00
|
|
|
|
|
|
|
[atheme]: http://www.atheme.net/
|
|
|
|
[anope]: http://www.anope.org/
|
|
|
|
|
2017-02-28 05:31:32 +00:00
|
|
|
For various reasons, this project is deprecated and replaced with [ircd-seven](http://github.com/freenode/ircd-seven).
|
|
|
|
Please direct all questions about this change to [Christel Dahlskjaer](mailto:christel@freenode.net) and
|
|
|
|
[Stephen Bennett](mailto:spb@freenode.net) of freenode.
|
|
|
|
|
2015-02-25 02:32:08 +00:00
|
|
|
# necessary requirements
|
|
|
|
|
|
|
|
* A supported platform
|
2016-03-23 20:10:44 +00:00
|
|
|
* A working dynamic library system
|
|
|
|
* A working lex and yacc - flex and bison should work
|
|
|
|
|
|
|
|
# platforms
|
|
|
|
|
|
|
|
Charybdis is designed with portability in mind, but does not target older systems nor those of solely academic
|
|
|
|
interest.
|
|
|
|
|
|
|
|
Do note that operating systems are only supported if they are supported by their vendor.
|
|
|
|
|
|
|
|
## Tier 1
|
|
|
|
|
|
|
|
These platforms are the best supported, and should always work. They are actively tested. If you encounter
|
|
|
|
problems, please file a bug.
|
|
|
|
|
|
|
|
* FreeBSD 10.x and above (i386 and amd64)
|
|
|
|
* Linux 2.6.x and above with glibc or musl (i386, x86_64, and ARM)
|
|
|
|
* Mac OS X 10.7 and above
|
|
|
|
* Windows Vista/Server 2008 and above (x86 or x64)
|
|
|
|
|
|
|
|
## Tier 2
|
|
|
|
|
2016-03-23 20:51:25 +00:00
|
|
|
These platforms are supported and occasionally tested, and most features should work, but this is not
|
|
|
|
guaranteed. If you find any problems, file a bug, but as these are not regularly tested platforms, a timely
|
|
|
|
resolution may not be possible.
|
2016-03-23 20:10:44 +00:00
|
|
|
|
|
|
|
* DragonflyBSD 4.4 and above (i386)
|
|
|
|
* Linux with uClibc (i386 or x86_64)
|
|
|
|
* NetBSD 6.1.x and above (i386, amd64)
|
|
|
|
* OpenBSD 5.6 and above (i386, amd64)
|
|
|
|
* Solaris 10 and above (i386)
|
|
|
|
|
|
|
|
## Tier 3
|
|
|
|
|
2016-03-23 20:51:25 +00:00
|
|
|
Anything else that hasn't been tested. Charybdis may or may not work on it; patches welcome if they don't.
|
2016-03-23 20:10:44 +00:00
|
|
|
|
|
|
|
# platform specific errata
|
|
|
|
|
|
|
|
These are known issues and workarounds for supported platforms.
|
|
|
|
|
2016-10-31 09:08:46 +00:00
|
|
|
* **Mac OS X and macOS **: you must set the LIBTOOLIZE environment
|
|
|
|
variable to point to glibtoolize before running autogen.sh:
|
|
|
|
`$ brew install libtool`
|
|
|
|
`$ LIBTOOLIZE="/opt/local/bin/glibtoolize"`
|
|
|
|
`$ export LIBTOOLIZE`
|
|
|
|
`$ ./autogen.sh`
|
|
|
|
|
2016-03-23 20:10:44 +00:00
|
|
|
* **FreeBSD**: if you are compiling with ipv6 you may experience
|
|
|
|
problems with ipv4 due to the way the socket code is written. To
|
|
|
|
fix this you must: "sysctl net.inet6.ip6.v6only=0"
|
|
|
|
|
|
|
|
* **Solaris**: you may have to set your PATH to include /usr/gnu/bin and /usr/gnu/sbin before /usr/bin
|
|
|
|
and /usr/sbin. Solaris's default tools don't seem to play nicely with the configure script.
|
2015-02-25 02:32:08 +00:00
|
|
|
|
2016-03-05 23:49:13 +00:00
|
|
|
# building from git
|
|
|
|
|
|
|
|
We no longer supply a prebuilt configure script in git, due to use of automake and libtool causing problems.
|
|
|
|
You will need to run `autogen.sh` to build the autotools files prior to building charybdis.
|
|
|
|
|
2015-02-25 02:32:08 +00:00
|
|
|
# feature specific requirements
|
|
|
|
|
2015-12-05 13:09:52 +00:00
|
|
|
* For SSL/TLS client and server connections, one of:
|
|
|
|
|
2016-08-15 10:50:59 +00:00
|
|
|
* OpenSSL 1.0.0 or newer (--enable-openssl)
|
|
|
|
* LibreSSL (--enable-openssl)
|
|
|
|
* mbedTLS (--enable-mbedtls)
|
|
|
|
* GnuTLS (--enable-gnutls)
|
2015-12-05 13:09:52 +00:00
|
|
|
|
2016-08-15 10:50:59 +00:00
|
|
|
* For certificate-based oper CHALLENGE, OpenSSL 1.0.0 or newer.
|
2015-12-05 13:09:52 +00:00
|
|
|
(Using CHALLENGE is not recommended for new deployments, so if you want to use a different TLS library,
|
|
|
|
feel free.)
|
2015-02-25 02:32:08 +00:00
|
|
|
|
2016-08-15 10:50:59 +00:00
|
|
|
* For ECDHE under OpenSSL, on Solaris and RHEL/Fedora (and its derivatives such as CentOS) you will
|
|
|
|
need to compile your own OpenSSL on these systems, as they have removed support for ECC/ECDHE.
|
|
|
|
Alternatively, consider using another library (see above).
|
2015-02-25 02:32:08 +00:00
|
|
|
|
|
|
|
# tips
|
|
|
|
|
2016-10-15 12:50:47 +00:00
|
|
|
* To report bugs in charybdis, visit us at irc.charybdis.io #charybdis
|
2015-02-25 02:32:08 +00:00
|
|
|
|
|
|
|
* Please read doc/index.txt to get an overview of the current documentation.
|
|
|
|
|
2016-03-23 20:10:44 +00:00
|
|
|
* Read the NEWS file for what's new in this release.
|
|
|
|
|
2015-02-25 02:32:08 +00:00
|
|
|
* The files, /etc/services, /etc/protocols, and /etc/resolv.conf, SHOULD be
|
|
|
|
readable by the user running the server in order for ircd to start with
|
|
|
|
the correct settings. If these files are wrong, charybdis will try to use
|
|
|
|
127.0.0.1 for a resolver as a last-ditch effort.
|
|
|
|
|
2016-04-10 21:49:42 +00:00
|
|
|
# git access
|
|
|
|
|
|
|
|
* The Charybdis GIT repository can be checked out using the following command:
|
2016-04-10 22:15:46 +00:00
|
|
|
`git clone https://github.com/charybdis-ircd/charybdis`
|
2016-04-10 21:49:42 +00:00
|
|
|
|
|
|
|
* Charybdis's GIT repository depot can be browsed over the Internet at the following address:
|
|
|
|
https://github.com/charybdis-ircd/charybdis
|