forked from hasufell/hasufell-repository
games-fps/sauerbraten: initial import of version 2013.02.03
This commit is contained in:
parent
7bf38fc49b
commit
0b3555740e
0
metadata/accounts/groups/sauerbraten.conf
Normal file
0
metadata/accounts/groups/sauerbraten.conf
Normal file
4
metadata/accounts/users/sauerbraten.conf
Normal file
4
metadata/accounts/users/sauerbraten.conf
Normal file
@ -0,0 +1,4 @@
|
||||
gecos = sauerbraten
|
||||
home = /var/lib/sauerbraten
|
||||
shell = /bin/bash
|
||||
primary_group = sauerbraten
|
28
packages/games-fps/sauerbraten/files/sauerbraten.conf
Normal file
28
packages/games-fps/sauerbraten/files/sauerbraten.conf
Normal file
@ -0,0 +1,28 @@
|
||||
# Config file for /etc/init.d/sauerbraten
|
||||
|
||||
# Owner of Sauerbraten server processes (must be existing)
|
||||
USER="sauerbraten"
|
||||
GROUP="sauerbraten"
|
||||
|
||||
|
||||
# Whether to run the dedicated server
|
||||
RUNSERVER="Yes"
|
||||
|
||||
# Location of the dedicated server config directory
|
||||
SERVERCONFIG="%SYSCONFDIR%"
|
||||
|
||||
# Additional command line arguments to the dedicated server
|
||||
SERVERARGS=""
|
||||
|
||||
|
||||
# Whether to run the master server
|
||||
RUNMASTER="No"
|
||||
|
||||
# Location of the master server config directory
|
||||
MASTERCONFIG="%SYSCONFDIR%"
|
||||
|
||||
# What port should the masterserver use
|
||||
MASTERPORT="28787"
|
||||
|
||||
# What ip should the masterserver bind to
|
||||
MASTERIP=""
|
97
packages/games-fps/sauerbraten/files/sauerbraten.init
Normal file
97
packages/games-fps/sauerbraten/files/sauerbraten.init
Normal file
@ -0,0 +1,97 @@
|
||||
#!/sbin/runscript
|
||||
|
||||
rundir=${rundir:-/run/sauerbraten}
|
||||
|
||||
depend() {
|
||||
use net
|
||||
}
|
||||
|
||||
start() {
|
||||
[ $(echo ${RUNMASTER} | tr '[:upper:]' '[:lower:]') = "yes" ] && start_master
|
||||
[ $(echo ${RUNSERVER} | tr '[:upper:]' '[:lower:]') = "yes" ] && start_server
|
||||
true
|
||||
}
|
||||
|
||||
start_server() {
|
||||
ebegin "Starting Sauerbraten dedicated server"
|
||||
|
||||
# Make sure necessary parameters are set
|
||||
SERVERCONFIG="${SERVERCONFIG:-%SYSCONFDIR%}"
|
||||
|
||||
if [ ! -d ${SERVERCONFIG} ]; then
|
||||
einfo "No ${SERVERCONFIG} around. Creating new..."
|
||||
mkdir ${SERVERCONFIG}
|
||||
chown ${USER}:${GROUP} ${SERVERCONFIG}
|
||||
fi
|
||||
|
||||
[ -d ${rundir} ] || {
|
||||
mkdir -p "${rundir}"
|
||||
chown -R ${USER}:${GROUP} "${rundir}"
|
||||
}
|
||||
|
||||
start-stop-daemon \
|
||||
--quiet \
|
||||
--start \
|
||||
--user ${USER} \
|
||||
--group ${GROUP} \
|
||||
--chdir ${SERVERCONFIG} \
|
||||
--make-pidfile \
|
||||
--pidfile "${rundir}"/server.pid \
|
||||
--background \
|
||||
--exec %LIBEXECDIR%/sauer_server -- ${SERVERARGS}
|
||||
eend $?
|
||||
}
|
||||
|
||||
start_master() {
|
||||
ebegin "Starting Sauerbraten master server"
|
||||
|
||||
# Make sure necessary parameters are set
|
||||
MASTERCONFIG="${MASTERCONFIG:-%SYSCONFDIR%}"
|
||||
[ -n "${MASTERIP}" ] && MASTERPORT="${MASTERPORT:-28787}"
|
||||
MASTERARGS="${MASTERCONFIG}/ ${MASTERPORT} ${MASTERIP}"
|
||||
|
||||
if [ ! -d ${MASTERCONFIG} ]; then
|
||||
einfo "No ${MASTERCONFIG} around. Creating new..."
|
||||
mkdir ${MASTERCONFIG}
|
||||
chown ${USER}:${GROUP} ${MASTERCONFIG}
|
||||
fi
|
||||
|
||||
[ -d ${rundir} ] || {
|
||||
mkdir -p "${rundir}"
|
||||
chown -R ${USER}:${GROUP} "${rundir}"
|
||||
}
|
||||
|
||||
start-stop-daemon \
|
||||
--quiet \
|
||||
--start \
|
||||
--user ${USER} \
|
||||
--group ${GROUP} \
|
||||
--make-pidfile \
|
||||
--pidfile "${rundir}"/master.pid \
|
||||
--background \
|
||||
--exec %LIBEXECDIR%/sauer_master -- ${MASTERARGS}
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
[ $(echo ${RUNSERVER} | tr '[:upper:]' '[:lower:]') = "yes" ] && stop_server
|
||||
[ $(echo ${RUNMASTER} | tr '[:upper:]' '[:lower:]') = "yes" ] && stop_master
|
||||
true
|
||||
}
|
||||
|
||||
stop_server() {
|
||||
ebegin "Stopping Sauerbraten dedicated server"
|
||||
start-stop-daemon --stop --retry 3 --pidfile "${rundir}"/server.pid
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop_master() {
|
||||
ebegin "Stopping Sauerbraten master server"
|
||||
start-stop-daemon --stop --retry 3 --pidfile "${rundir}"/master.pid
|
||||
eend $?
|
||||
}
|
||||
|
||||
restart() {
|
||||
svc_stop
|
||||
svc_start
|
||||
}
|
126
packages/games-fps/sauerbraten/sauerbraten-2013.02.03.exheres-0
Normal file
126
packages/games-fps/sauerbraten/sauerbraten-2013.02.03.exheres-0
Normal file
@ -0,0 +1,126 @@
|
||||
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
require gtk-icon-cache
|
||||
|
||||
EDITION="collect_edition"
|
||||
SUMMARY="Cube 2: Sauerbraten is an open source game engine (Cube 2) with freeware game data (Sauerbraten)"
|
||||
HOMEPAGE="http://sauerbraten.org/"
|
||||
DOWNLOADS="mirror://sourceforge/sauerbraten/sauerbraten/2013_01_04/sauerbraten_${PV//./_}_${EDITION}_linux.tar.bz2"
|
||||
|
||||
LICENCES="ZLIB freedist"
|
||||
SLOT="0"
|
||||
PLATFORMS="~amd64 ~x86"
|
||||
MYOPTIONS=""
|
||||
|
||||
DEPENDENCIES="
|
||||
build+run:
|
||||
media-libs/SDL:0[X]
|
||||
media-libs/SDL_image:1
|
||||
media-libs/SDL_mixer:0[ogg]
|
||||
x11-libs/libX11
|
||||
sys-libs/zlib
|
||||
x11-dri/glu
|
||||
x11-dri/mesa
|
||||
run:
|
||||
group/sauerbraten [[ note = [ for server ] ]]
|
||||
user/sauerbraten [[ note = [ for server ] ]]
|
||||
"
|
||||
|
||||
WORK=${WORKBASE}/${PN}
|
||||
|
||||
src_prepare() {
|
||||
edo rm -r sauerbraten_unix bin_unix src/{include,lib,vcpp}
|
||||
|
||||
default
|
||||
|
||||
# Fix links so they point to the correct directory
|
||||
edo sed -i -e 's:docs/::' README.html
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -C src master server client
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local LIBEXECDIR="/usr/$(exhost --target)/libexec/${PN}"
|
||||
local DATADIR="/usr/share/${PN}"
|
||||
local STATEDIR="/var/lib/${PN}"
|
||||
|
||||
# Install the game data
|
||||
insinto "${DATADIR}"
|
||||
doins -r data packages
|
||||
|
||||
# Install the client executable
|
||||
exeinto "${LIBEXECDIR}"
|
||||
doexe src/sauer_client
|
||||
|
||||
# Install the client wrapper
|
||||
herebin ${PN}-client <<EOF
|
||||
#!/bin/sh
|
||||
cd ${DATADIR}
|
||||
exec "${LIBEXECDIR}/sauer_client" -q \$HOME/.${PN} -r "\$@"
|
||||
EOF
|
||||
|
||||
# Create menu entry
|
||||
insinto /usr/share/icons/hicolor/256x256/apps
|
||||
newins data/cube.png ${PN}.png
|
||||
insinto /usr/share/applications
|
||||
hereins ${PN}.desktop <<EOF
|
||||
[Desktop Entry]
|
||||
Name=Cube 2: Sauerbraten
|
||||
Type=Application
|
||||
Comment=${SUMMARY}
|
||||
Exec=${PN}-client
|
||||
TryExec=${PN}-client
|
||||
Icon=${PN}
|
||||
Categories=Game;ActionGame;
|
||||
EOF
|
||||
|
||||
# Install the server config files
|
||||
insinto "${STATEDIR}"
|
||||
doins "server-init.cfg"
|
||||
|
||||
# Install the server executables
|
||||
exeinto "${LIBEXECDIR}"
|
||||
doexe src/sauer_master
|
||||
doexe src/sauer_server
|
||||
|
||||
herebin ${PN}-server <<EOF
|
||||
#!/bin/sh
|
||||
exec "${LIBEXECDIR}/sauer_server" -k${DATADIR} -q${STATEDIR} "\$@"
|
||||
EOF
|
||||
herebin ${PN}-master <<EOF
|
||||
#!/bin/sh
|
||||
exec "${LIBEXECDIR}/sauer_master" ${STATEDIR} "\$@"
|
||||
EOF
|
||||
|
||||
# Install the server init script
|
||||
edo cp "${FILES}"/${PN}.init "${TEMP}"
|
||||
edo sed -i \
|
||||
-e "s:%SYSCONFDIR%:${STATEDIR}:g" \
|
||||
-e "s:%LIBEXECDIR%:${LIBEXECDIR}:g" \
|
||||
"${TEMP}"/${PN}.init
|
||||
newinitd "${TEMP}"/${PN}.init ${PN}
|
||||
edo cp "${FILES}"/${PN}.conf "${TEMP}"
|
||||
edo sed -i \
|
||||
-e "s:%SYSCONFDIR%:${STATEDIR}:g" \
|
||||
-e "s:%LIBEXECDIR%:${LIBEXECDIR}:g" \
|
||||
"${TEMP}"/${PN}.conf
|
||||
newconfd "${TEMP}"/${PN}.conf ${PN}
|
||||
|
||||
dodoc src/*.txt docs/dev/*.txt
|
||||
|
||||
insinto /usr/share/doc/${PNVR}/html
|
||||
doins -r README.html docs/*
|
||||
|
||||
edo chown sauerbraten:sauerbraten "${IMAGE%/}/${STATEDIR}"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "If you plan to use map editor feature copy all map data from ${DATADIR}"
|
||||
elog "to corresponding folder in your HOME/.${PN}"
|
||||
|
||||
gtk-icon-cache_pkg_postinst
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user