]> jfr.im git - irc/quakenet/newserv.git/blob - README
BUILD: improve workspace mechanism
[irc/quakenet/newserv.git] / README
1 Introduction
2 ============
3
4 newserv is a P10 protocol services daemon developed for the QuakeNet IRC
5 Network.
6
7 It is modular, fast and easily customisable.
8
9 The official website for newserv is https://www.quakenet.org/development
10
11 Please refer to the LICENSE file for licensing details.
12
13 Features
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
30 Requirements
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
43 Support & Development
44 =====================
45
46 Please read the documentation provided before you ask us for support. You may
47 find some assistance in #dev on QuakeNet for specific questions.
48
49 If you've found any bugs or you're working on any cool new features please give
50 us a shout.
51
52 Installation
53 ============
54
55 First run configure script:
56
57 $ ./configure
58
59 The configure script will list any missing dependencies. If you're unsure why
60 a certain library or header file was not found you can run the configure script
61 with the -v option or check the .configure.log file after your first configure
62 run.
63
64 Please refer to the "Local Settings" section in this file if you're using
65 non-standard library/header search paths. Once you've resolved all dependency
66 issues you can build newserv:
67
68 $ make
69
70 After all modules are built you can install newserv:
71
72 $ make install
73
74 By default the newserv binary and the modules are installed into your source
75 tree. The recommended setup is to now create a separate directory and symlink
76 the "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
83 You will also need to copy the newserv.conf.example configuration file to your
84 installation directory and rename it to newserv.conf. The MODULES file has a
85 list of available modules and their configuration settings.
86
87 After you have updated your newserv.conf file you can start newserv:
88
89 $ ./newserv
90
91 newserv does not detach from the console. Consider running it in a
92 screen(1) session.
93
94 User Accounts
95 -------------
96
97 You can create a user on your control instance using /msg N hello (where N is
98 the nick of your control user). You need to be opered and authed in order to
99 use this command.
100
101 If your network does not have an authentication service that supports account
102 IDs you can load the "auth" module. Note that this module lets opers set
103 arbitrary account names and IDs and therefore should probably not be loaded on
104 production networks.
105
106 Once you have an account you should have a look at /msg N showcommands for a
107 list of available commands.
108
109 Local Settings
110 --------------
111
112 If you are using non-standard library/include paths you can create a file
113 called configure.ini.local (using configure.ini.local.example as a template) to
114 override some of the settings.