]> jfr.im git - irc/quakenet/newserv.git/blame_incremental - README
TRUSTS: require sqlite
[irc/quakenet/newserv.git] / README
... / ...
CommitLineData
1Introduction
2============
3
4newserv is a P10 protocol services daemon developed for the QuakeNet IRC
5Network.
6
7It is modular, fast and easily customisable.
8
9The official website for newserv is https://www.quakenet.org/development
10
11Please refer to the LICENSE file for licensing details.
12
13Features
14========
15
16 * Role-based access checks for oper commands
17 * Search functionality
18 * Scripting (Lua)
19 * Proxy detection (P)
20 * Connection limits ("trusts")
21 * Transactional g:line support
22 * Jupes
23 * Chanfix
24 * Chanserv (Q9)
25 * Help Service (G)
26 * Channel Service Request (R)
27 * QA/Tutor Bots
28 * Server list with latency checks
29
30Requirements
31============
32
33* IRC Server running the P10 Protocol. Full support for all modules may require
34 use of QuakeNet's snircd IRC server [available from
35 https://www.quakenet.org/development], which is based upon Undernet's IRCU
36 server [http://coder-com.undernet.org/].
37* Linux system (BSDs may work, but not actively tested)
38* flex
39* bison
40* GNU Make
41* Python 2.4
42
43Support & Development
44=====================
45
46Please read the documentation provided before you ask us for support. You may
47find some assistance in #dev on QuakeNet for specific questions.
48
49If you've found any bugs or you're working on any cool new features please give
50us a shout.
51
52Installation
53============
54
55First run configure script:
56
57$ ./configure
58
59The configure script will list any missing dependencies. If you're unsure why
60a certain library or header file was not found you can run the configure script
61with the -v option or check the .configure.log file after your first configure
62run.
63
64Please refer to the "Local Settings" section in this file if you're using
65non-standard library/header search paths. Once you've resolved all dependency
66issues you can build newserv:
67
68$ make
69
70After all modules are built you can install newserv:
71
72$ make install
73
74By default the newserv binary and the modules are installed into your source
75tree. The recommended setup is to now create a separate directory and symlink
76the "newserv" binary and the "modules" directory into it:
77
78$ cd
79$ mkdir newserv-install && cd newserv-install
80$ ln -s ../newserv-src/newserv
81$ ln -s ../newserv-src/modules
82
83You will also need to copy the newserv.conf.example configuration file to your
84installation directory and rename it to newserv.conf. The MODULES file has a
85list of available modules and their configuration settings.
86
87After you have updated your newserv.conf file you can start newserv:
88
89$ ./newserv
90
91newserv does not detach from the console. Consider running it in a
92screen(1) session.
93
94User Accounts
95-------------
96
97You can create a user on your control instance using /msg N hello (where N is
98the nick of your control user). You need to be opered and authed in order to
99use this command.
100
101If your network does not have an authentication service that supports account
102IDs you can load the "auth" module. Note that this module lets opers set
103arbitrary account names and IDs and therefore should probably not be loaded on
104production networks.
105
106Once you have an account you should have a look at /msg N showcommands for a
107list of available commands.
108
109Local Settings
110--------------
111
112If you are using non-standard library/include paths you can create a file
113called configure.ini.local (using configure.ini.local.example as a template) to
114override some of the settings.