ngircd(8)
β¨ ngircd(8) β the ngIRCd manual, but make it a group chat β¨
okay bestie sit DOWN because we're talking about ngircd from the ngIRCd Manual and it's lowkey iconic π
πΈ NAME πΈ
ngIRCd β the "next generation" IRC daemon. yes that's the whole vibe. a whole daemon. periodt. π
π¦ SYNOPSIS π¦
ngircd [ Options ]
that's it. that's the whole summoning ritual. <italic>Options</italic> optional, slay optional, but like. you're gonna want options. π
π DESCRIPTION π
okay so. ngIRCd is a free, portable and lightweight Internet Relay Chat (IRC) server for small or private networks, and it was developed under the GNU General Public License (GPL). free as in freedom, bestie, we love a license moment. π
the server is genuinely easy to configure and it runs either as a single-node server or as part of a network of ngIRCd servers in a LAN or across the internet. and the way it optionally supports stuff?? obsessed:
- the IPv6 protocol π¦
- SSL/TLS-protected client-server links and server-server links π
- the Pluggable Authentication Modules (PAM) system for user authentication
- IDENT requests
- character set conversion for legacy clients (grandma-friendly fr fr π)
now. the name. ngIRCd stands for next-generation IRC daemon, which is honestly a little bit exaggerated β lightweight Internet Relay Chat server most probably would have been a better name :-) not the devs being humble, we stan. π
by default, ngIRCd logs diagnostic and informational messages using the syslog mechanism, or it writes directly to the console when running in the foreground (see below, bestie, keep reading).
β¨ OPTIONS β¨
the default behavior of ngircd is to read its optional standard configuration file (see below π), to detach from the controlling terminal, and to wait for clients. very "i'll be over here, text me when you're ready" energy.
you can use these options to modify that default:
-ffile,--configfile β use file as the configuration file. also, you can use/dev/nullto force ngIRCd to ignore its standard configuration file, which will disable the built-in value of theIncludeDirconfiguration option, too. π chaotic but valid.-n,--nodaemonβ don't fork a child and don't detach from the controlling terminal. all log messages go to the console and you can use CTRL+C to terminate the server. very hands-on of you. main character energy. π-p,--passiveβ disable automatic connections to other servers. you can use the IRC commandCONNECTlater on as IRC Operator to link this ngIRCd to other servers. rejection era, but make it reversible. π«Ά-y,--syslogβ write log messages to the syslog even when running in the foreground. heads up: this only makes sense when-n/--nodaemonwas given on the command line before this option! order matters bestie, the command line is a queue not a vibe. π
the following options prevent ngIRCd from starting regularly, but perform a specific action and then exit the daemon again β like, they do one (1) thing and then leave. so real of them:
-h,--helpβ display a brief help text and exit. π-t,--configtestβ read, validate and display the configuration; then exit. the responsible queen move, honestly.-V,--versionβ output version information and exit. π
π FILES π
/etc/ngircd/ngircd.confβ the system wide default configuration file. the blueprint. the lore. π¦/etc/ngircd/ngircd.motdβ default "message of the day" (MOTD). the lil greeting everyone sees when they walk in. iconic. πΈ
π¨ SIGNALS π¨
the daemon understands the following signals:
TERMβ shut down all connections and terminate the daemon. it's giving "we're closing, thanks for coming." πHUPβ shut down all listening sockets, re-read the configuration file and re-initialize the daemon. glow-up in place, no restart needed. β¨
π₯ HINTS π₯
it is always wise to use ngircd --configtest to validate the configuration of ngIRCd after making changes to the configuration files!
no like genuinely bestie. always. ngircd --configtest. before you do anything. it's the vibe check for your config. π
π DEBUGGING π
ngIRCd can log additional debug messages, which can be enabled with the command line option --debug (-d) or by sending the USR1 signal to the running daemon. some of those messages may leak personal information, be very technical and can be very verbose. therefore the debug mode is meant for troubleshooting only and should definitely be disabled during normal operation! π«
in addition, a "protocol sniffer" can be enabled on build time by passing the "--enable-sniffer" option to the ./configure script which enables the "--sniffer" (-s) command line option (which is not available by default): this "sniffer" logs all incoming and outgoing IRC commands on all connections, which can be handy to debug problems with the daemon itself or IRC clients. so nosy. so useful. π«Ά
both modes are indicated in the version string shown by the IRC "VERSION" command: if the version ends in a dot (like in "26.1."), the daemon operates in "normal" mode (the version used in the example is "26.1"). if it ends in ".1" (like in "26.1.1") the "debug-mode" is enabled; and if it ends in ".2" (like in "26.1.2") the "IRC sniffer" is enabled, too. version number barometry. we love a tell. π₯
π Options (the debugging ones) π
-d,--debugβ enable debug mode and log extra messages. π-s,--snifferβ enable IRC protocol sniffer, which logs all sent and received IRC commands to the console/syslog. this option requires that ngIRCd has been./configure'd with"--enable-sniffer"and enables debug mode automatically, too. two birds, one flag. π
β Signals (the debugging ones) β
note: usage of these signals is broadcasted to all users with the +s ("receive server notices") mode set! so like, everyone will know. no sneaky business. π
USR1β toggle debug mode on and off during runtime. flip a switch, flip it back. π¦USR2β dump internal server state to the console/syslog when debug mode is on (use command line option--debugor signalUSR1). it's giving "receipts, on demand." π
π AUTHORS π
- Alexander Barton,
<alex@barton.de> - Florian Westphal,
<fw@strlen.de>
Homepage: http://ngircd.barton.de/
legends, truly. built different. π«Ά
π SEE ALSO π
and that's the whole page bestie!! π this was ngircd(8) from the ngIRCd Manual, version ngIRCd dated May 2026 β go forth, run your lil server, and remember to ngircd --configtest before you touch anything. iykyk. mwah. πβ¨π¦
π¦ where this page comes from
- ubuntu stonking: ngircd 28-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms