summaryrefslogtreecommitdiffstats
path: root/install.cgi.sh
blob: e6d5eeb83726b9e56902120ce94cbad40ee0fd58 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#!/bin/sh
#
# Sets up /var/www/cgi-bin/lex.cgi and its supporting directory tree
# under /var/www/var/lex. 

set -eu

# source location: current directory
SRCDIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)

if [ "$(id -u)" -ne 0 ]; then
    echo "ERROR: operation not permitted" >&2
    exit 1
fi

if [ ! -d "/var/www/cgi-bin" ]; then
    echo "ERROR: /var/www/cgi-bin does not exist." >&2
    exit 1
fi

if [ ! -f "$SRCDIR/lex.cgi" ]; then
    echo "ERROR: source file not found: $SRCDIR/lex.cgi" >&2
    exit 1
fi

if [ ! -f "$SRCDIR/pubring.gpg" ]; then
    echo "ERROR: source file not found: $SRCDIR/pubring.gpg" >&2
    exit 1
fi

# directory tree 
mkdir -p "/var/www/var"
chown root:daemon "/var/www/var"
chmod 755 "/var/www/var"

mkdir -p "/var/www/var/lex"
chown www:tool "/var/www/var/lex"
chmod 710 "/var/www/var/lex"

mkdir -p "/var/www/var/lex/locks"
chown www:www "/var/www/var/lex/locks"
chmod 750 "/var/www/var/lex/locks"

mkdir -p "/var/www/var/lex/spool"
chown www:tool "/var/www/var/lex/spool"
chmod 710 "/var/www/var/lex/spool"

mkdir -p "/var/www/var/lex/spool/tmp"
chown www:tool "/var/www/var/lex/spool/tmp"
chmod 750 "/var/www/var/lex/spool/tmp"

mkdir -p "/var/www/var/lex/spool/new"
chown www:tool "/var/www/var/lex/spool/new"
chmod 2770 "/var/www/var/lex/spool/new"

mkdir -p "/var/www/var/lex/dict"
chown lex:tool "/var/www/var/lex/dict"
chmod 770 "/var/www/var/lex/dict"

mkdir -p "/var/www/var/log"
chmod 1770 "/var/www/var/log"
chown www:tool "/var/www/var/log"

# pubring.gpg 
cp -f "$SRCDIR/pubring.gpg" "/var/www/var/lex/pubring.gpg"
chmod 440 "/var/www/var/lex/pubring.gpg"
chown www:tool "/var/www/var/lex/pubring.gpg"
echo "copied: $SRCDIR/pubring.gpg -> /var/www/var/lex/pubring.gpg"

# lex.cgi
cp -f "$SRCDIR/lex.cgi" "/var/www/cgi-bin/lex.cgi"
chmod 755 "/var/www/cgi-bin/lex.cgi"
chown root:daemon "/var/www/cgi-bin/lex.cgi"
echo "copied: $SRCDIR/lex.cgi -> /var/www/cgi-bin/lex.cgi"

echo "done."