diff options
| author | Mistivia <i@mistivia.com> | 2025-10-23 23:44:03 +0800 |
|---|---|---|
| committer | Mistivia <i@mistivia.com> | 2025-10-23 23:44:07 +0800 |
| commit | c8aeef18cb46a617b6397b9822263895e97e9048 (patch) | |
| tree | ebe127e7c194039f315b74a5998b05a271c57b9d /ngircd/contrib/ngircd.service | |
add ircd
Diffstat (limited to 'ngircd/contrib/ngircd.service')
| -rw-r--r-- | ngircd/contrib/ngircd.service | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/ngircd/contrib/ngircd.service b/ngircd/contrib/ngircd.service new file mode 100644 index 0000000..311bc0d --- /dev/null +++ b/ngircd/contrib/ngircd.service @@ -0,0 +1,48 @@ +# ngIRCd systemd service unit. +# See systemd(1), systemd.unit(5), systemd.service(5), systemd.exec(5). + +[Unit] +Description=Next Generation IRC Daemon +Documentation=man:ngircd(8) man:ngircd.conf(5) https://ngircd.barton.de +After=network.target +Wants=anope.service atheme.service irc-services.service +Wants=bopm.service hopm.service +Before=anope.service atheme.service irc-services.service +Before=bopm.service hopm.service + +[Service] +Type=notify +User=irc +Group=irc +# Settings & limits: +CapabilityBoundingSet=CAP_SYS_CHROOT CAP_NET_BIND_SERVICE +MemoryDenyWriteExecute=yes +NoNewPrivileges=yes +PrivateDevices=yes +PrivateTmp=yes +ProtectControlGroups=yes +ProtectHome=yes +ProtectKernelModules=yes +ProtectKernelTunables=yes +ProtectSystem=full +RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX +RestrictRealtime=yes +RuntimeDirectory=ircd +RuntimeDirectoryMode=750 +StandardError=journal +StandardOutput=journal +# Try to load "default files" from any Debian package variant to keep this +# unit generic. +EnvironmentFile=-/etc/default/ngircd +EnvironmentFile=-/etc/default/ngircd-full +EnvironmentFile=-/etc/default/ngircd-full-dbg +# Start ngIRCd. Note: systemd doesn't allow to use $DAEMON here! +ExecStart=/usr/sbin/ngircd --nodaemon --syslog $PARAMS +ExecReload=/bin/kill -HUP $MAINPID +# Error handling: +# ngIRCd tries to "ping" the service manager every 3 seconds. +WatchdogSec=10 +Restart=on-failure + +[Install] +WantedBy=multi-user.target |
