mirror of
https://github.com/osmarks/ngircd.git
synced 2025-02-01 10:09:10 +00:00
e4873b4d63
This allows the "ngircd.service" systemd(8) unit to use the "notify" service type, which allows for better status tracking by the service manager.
44 lines
1.2 KiB
Desktop File
44 lines
1.2 KiB
Desktop File
# 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
|
|
# 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
|
|
Restart=on-failure
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|