All Projects → quakenet → newserv

quakenet / newserv

Licence: other
QuakeNet's modular services

Programming Languages

c
50402 projects - #5 most used programming language
lua
6591 projects
perl
6916 projects
Makefile
30231 projects
python
139335 projects - #7 most used programming language
C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to newserv

Twitch4j
Modular Async/Sync/Reactive Twitch API Client / IRC Client
Stars: ✭ 209 (+945%)
Mutual labels:  irc
Ios
IRCCloud iOS App
Stars: ✭ 243 (+1115%)
Mutual labels:  irc
CloudBot
CloudBot - The simple, fast, expandable, open-source Python IRC Bot!
Stars: ✭ 69 (+245%)
Mutual labels:  irc
Hexchat
GTK+ IRC client
Stars: ✭ 2,608 (+12940%)
Mutual labels:  irc
Matterircd
Connect to your mattermost or slack using your IRC-client of choice.
Stars: ✭ 241 (+1105%)
Mutual labels:  irc
rubircd
💬 An IRC server written in Ruby
Stars: ✭ 23 (+15%)
Mutual labels:  irc
Bitlbee Discord
Bitlbee plugin for Discord (http://discordapp.com)
Stars: ✭ 204 (+920%)
Mutual labels:  irc
etcdircd
An ircd backed by etcd
Stars: ✭ 76 (+280%)
Mutual labels:  irc
Anope
Anope IRC Services
Stars: ✭ 241 (+1105%)
Mutual labels:  irc
jChat
jChat is an overlay that allows you to show your Twitch chat on screen with OBS, XSplit, and any other streaming software that supports browser sources.
Stars: ✭ 106 (+430%)
Mutual labels:  irc
Archivebot
ArchiveBot, an IRC bot for archiving websites
Stars: ✭ 218 (+990%)
Mutual labels:  irc
Jenni
jenni was a python IRC bot. Project is closed. Try Sopel instead, https://sopel.chat/
Stars: ✭ 232 (+1060%)
Mutual labels:  irc
ergo
A modern IRC server (daemon/ircd) written in Go.
Stars: ✭ 1,916 (+9480%)
Mutual labels:  irc
Irccloud Desktop
IRCCloud Desktop App
Stars: ✭ 215 (+975%)
Mutual labels:  irc
freenode-exodus
Projects and channels that have decided to leave Freenode. (Final leave count: 1056)
Stars: ✭ 130 (+550%)
Mutual labels:  irc
Whapp Irc
whatsapp web <-> irc gateway
Stars: ✭ 208 (+940%)
Mutual labels:  irc
Android
IRCCloud Android App
Stars: ✭ 244 (+1120%)
Mutual labels:  irc
solanum
An IRCd for unified networks
Stars: ✭ 179 (+795%)
Mutual labels:  irc
critter
Chat bot relaying messages between IRC and Gitter
Stars: ✭ 16 (-20%)
Mutual labels:  irc
Snooful
The most complete bot for moderation, utility, and fun in Reddit Chat.
Stars: ✭ 13 (-35%)
Mutual labels:  irc

newserv

C/C++ CI

Introduction

newserv is a P10 protocol services daemon developed for the QuakeNet IRC network.

It is modular, fast and easily customisable.

The official website for newserv is https://development.quakenet.org/

Please refer to the LICENSE file for licensing details.

Features

  • Role-based access checks for oper commands
  • Search functionality
  • Scripting (Lua)
  • Proxy detection (P)
  • Connection limits ("trusts")
  • Transactional g:line support
  • Jupes
  • Chanfix
  • Chanserv (Q9)
  • Help Service (G)
  • Channel Service Request (R)
  • QA/Tutor Bots
  • Server list with latency checks

Requirements

  • IRC Server running the P10 Protocol. Full support for all modules may require use of QuakeNet's snircd IRC server, which is based upon Undernet's ircu.
  • Linux system (BSDs may work, but not actively tested)
  • flex
  • bison
  • GNU Make
  • Python 2.4

Support & development

Please read the documentation provided before you ask us for support. You may find some assistance in #dev on QuakeNet for specific questions.

If you've found any bugs or you're working on any cool new features please give us a shout.

Installation

First run configure script:

$ ./configure

The configure script will list any missing dependencies. If you're unsure why a certain library or header file was not found you can run the configure script with the -v option or check the .configure.log file after your first configure run.

Please refer to the "Local Settings" section in this file if you're using non-standard library/header search paths. Once you've resolved all dependency issues you can build newserv:

$ make

After all modules are built you can install newserv:

$ make install

By default the newserv binary and the modules are installed into your source tree. The recommended setup is to now create a separate directory and symlink the "newserv" binary and the "modules" directory into it:

$ cd
$ mkdir newserv-install && cd newserv-install
$ ln -s ../newserv-src/newserv
$ ln -s ../newserv-src/modules

You will also need to copy the newserv.conf.example configuration file to your installation directory and rename it to newserv.conf.

The MODULES file has a list of available modules and their configuration settings.

After you have updated your newserv.conf file you can start newserv:

$ ./newserv

newserv does not detach from the console. Consider running it in a screen(1) session.

User accounts

You can create a user on your control instance using /msg N hello (where N is the nick of your control user). You need to be opered and authed in order to use this command.

If your network does not have an authentication service that supports account IDs you can load the "auth" module. Note that this module lets opers set arbitrary account names and IDs and therefore should probably not be loaded on production networks.

Once you have an account you should have a look at /msg N showcommands for a list of available commands.

Local settings

If you are using non-standard library/include paths you can create a file called configure.ini.local (using configure.ini.local.example as a template) to override some of the settings.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].