Over my time using Artix (which has been awhile), I've made several of my own services for various things I use. I figured it was time to contribute and asked on the IRC how I should share these and was told to post a topic here, so here is the topic.
Some of these are slightly incomplete, only have a system service or a user service (where they could have both), and may need some minor corrections, but they should be something at the least.
cdemu-daemon-dinit (depends on extra/cdemu-daemon)
user/cdemu-daemon
type = process
load-options = sub-vars
command = /usr/bin/cdemu-daemon
restart = true
smooth-recovery = true
depends-on = dbus
log-type = buffer
icecast-dinit (depends on icecast)
icecast
type = process
command = /usr/bin/icecast -c /etc/icecast.xml
run-as = icecast
smooth-recovery = true
logfile = /var/log/dinit/icecast.log
depends-on = network.target
Icecast is not in the Arch or Artix repositories. Requesting packaging, please.
inspircd-dinit (depends on inspircd)
inspircd-pre
type = scripted
command = /usr/bin/install -dm0755 -o inspircd -g inspircd /run/inspircd
after = pseudofs
inspircd
type = process
command = /usr/bin/inspircd --runasroot --nofork
smooth-recovery = true
logfile = /var/log/dinit/inspircd.log
depends-on = inspircd-pre
depends-on = network.target
Inspircd is not in the Arch or Artix repositories. Requesting packaging, please.
jellyfin-dinit (depends on extra/jellyfin-server)
user/jellyfin
type = process
command = /usr/bin/jellyfin
smooth-recovery = true
log-type = buffer
This could also be a system service and it is meant to be one, but I run it as a user.
monero-dinit (depends on extra/monero)
monerod
type = process
command = /usr/bin/monerod --config-file /etc/monerod.conf --non-interactive
run-as = monero
smooth-recovery = yes
restart = yes
after = login.target
user/monerod
type = process
command = /usr/bin/monerod --non-interactive
smooth-recovery = yes
restart = yes
opendkim-dinit (depends on extra/opendkim)
opendkim-pre
type = scripted
command = /usr/bin/install -dm0775 -o opendkim -g opendkim /run/opendkim
depends-on = root-rw
opendkim
type = bgprocess
command = /usr/bin/opendkim -x /etc/opendkim/opendkim.conf -u opendkim -f
pid-file = /run/opendkim/opendkim.pid
smooth-recovery = true
logfile = /var/log/dinit/opendkim.log
depends-on = opendkim-pre
depends-on = network.target
run-as = opendkim
opendmarc-dinit (depends on extra/opendmarc)
opendmarc-pre
type = scripted
command = /usr/bin/install -dm0755 -o opendmarc -g opendmarc /run/opendmarc
depends-on = root-rw
opendmarc
type = process
command = /usr/bin/opendmarc -c /etc/opendmarc/opendmarc.conf -f
smooth-recovery = true
logfile = /var/log/dinit/opendmarc.log
depends-on = network.target
depends-on = opendmarc-pre
run-as = opendmarc
wivrn-dinit (depends on wivrn-server)
user/wivrnd
type = process
command = /usr/bin/wivrn-server
smooth-recovery = yes
restart = yes
log-type = buffer
WiVRn is not in the Arch or Artix repositories. Requesting packaging of wivrn-server (and optionally wivrn-dashboard), please.
yggdrasil-dinit (depends on extra/yggdrasil)
yggdrasil
type = process
command = /usr/bin/yggdrasil -useconffile /etc/yggdrasil.conf
pid-file = /run/yggdrasil.pid
smooth-recovery = true
logfile = /var/log/dinit/yggdrasil.log
after = network.target
Hopefully most if not all of these are adequate, as well as some of my packaging requests. If not, at the very least hope these help somebody. Thanks!