games-engines/ioquake3: add user/group for dedicated server USE flag

Signed-off-by: Shin'ya Minazuki <shinyoukai@chaotic.ninja>
This commit is contained in:
Shin'ya Minazuki 2026-07-06 13:24:15 -03:00
commit 21782e92ea
5 changed files with 47 additions and 3 deletions

View file

@ -0,0 +1,6 @@
# Copyright 2026 Shin'ya Minazuki
EAPI=8
inherit acct-group
ACCT_GROUP_ID=-1

View file

@ -0,0 +1,12 @@
# Copyright 2026 Shin'ya Minazuki
EAPI=8
inherit acct-user
DESCRIPTION="ioquake3 dedicated server"
ACCT_USER_ID=-1
ACCT_USER_GROUPS=( ioq3ded )
ACCT_USER_HOME="/var/lib/ioquake3"
ACCT_USER_SHELL="/bin/sh"
acct-user_add_deps

View file

@ -0,0 +1,13 @@
#!/sbin/openrc-run
# Copyright 2026 Shin'ya Minazuki
supervisor="supervise-daemon"
command="/usr/bin/ioq3ded"
command_background="true"
command_user="ioq3ded"
directory="/var/lib/ioquake3"
pidfile="/run/${RC_SVCNAME}.pid"
depend() {
need net
}

View file

@ -25,6 +25,10 @@ DEPEND="
media-libs/opus media-libs/opus
media-libs/opusfile media-libs/opusfile
) )
server? (
acct-group/ioq3ded
acct-user/ioq3ded
)
media-libs/libjpeg-turbo media-libs/libjpeg-turbo
media-libs/libsdl2 media-libs/libsdl2
sys-libs/zlib sys-libs/zlib
@ -72,7 +76,10 @@ src_configure() {
src_install() { src_install() {
cmake_src_install cmake_src_install
use client && make_wrapper ${PN} "/usr/$(get_libdir)/${PN}/${PN}" use client && make_wrapper ${PN} "/usr/$(get_libdir)/${PN}/${PN}"
use server && make_wrapper ioq3ded "/usr/$(get_libdir)/${PN}/ioq3ded" if use server; then
make_wrapper ioq3ded "/usr/$(get_libdir)/${PN}/ioq3ded"
newinitd "${FILESDIR}/ioq3ded.initd-r0" ioq3ded
fi
} }
pkg_postinst() { pkg_postinst() {

View file

@ -24,6 +24,10 @@ DEPEND="
media-libs/opus media-libs/opus
media-libs/opusfile media-libs/opusfile
) )
server? (
acct-group/ioq3ded
acct-user/ioq3ded
)
media-libs/libjpeg-turbo media-libs/libjpeg-turbo
media-libs/libsdl2 media-libs/libsdl2
sys-libs/zlib sys-libs/zlib
@ -67,8 +71,10 @@ src_configure() {
src_install() { src_install() {
cmake_src_install cmake_src_install
use client && make_wrapper ${PN} "/usr/$(get_libdir)/${PN}/${PN}" use client && make_wrapper ${PN} "/usr/$(get_libdir)/${PN}/${PN}"
use server && make_wrapper ioq3ded "/usr/$(get_libdir)/${PN}/ioq3ded" if use server; then
make_wrapper ioq3ded "/usr/$(get_libdir)/${PN}/ioq3ded"
newinitd "${FILESDIR}/ioq3ded.initd-r0" ioq3ded
fi
} }
pkg_postinst() { pkg_postinst() {