aboutsummaryrefslogtreecommitdiffstats
path: root/games/actioncube/files/assaultcube_client.in
blob: bac9e36abbea00f4dd9588bf54ba7cfc53d04886 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh

# The executable needs to be run from its data directory, and needs to store
# configuration in it. We therefore mirror the data directory hierarchy in
# ~/.XXX, and create symlinks to the data files, but the configuration files
# are copied, and write permission for the user is added to them.

APPNAME="assaultcube"

if [ -d ~/.$APPNAME ]
then
    echo "Using existing ~/.$APPNAME directory."
else
    echo "Creating ~/.$APPNAME directory."
    cd %%DATADIR%% || exit 1
    find * -type d -exec mkdir -p ~/.$APPNAME/{} \;
    find * -type f -name "*.cfg" \
        -exec cp %%DATADIR%%/{} ~/.$APPNAME/{} \; \
        -exec chmod u+w ~/.$APPNAME/{} \; 2>/dev/null
    find * -type f -exec ln -s %%DATADIR%%/{} ~/.$APPNAME/{} \; 2>/dev/null
fi

cd ~/.$APPNAME || exit 1
exec %%PREFIX%%/libexec/${APPNAME}_client "$@"