File: postinst

package info (click to toggle)
onak 0.6.1-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 2,228 kB
  • sloc: ansic: 13,547; sh: 376; perl: 301; sql: 21; makefile: 19
file content (61 lines) | stat: -rw-r--r-- 2,049 bytes parent folder | download | duplicates (4)
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
#! /bin/sh

set -e

if [ "$1" = "configure" ]; then
    if dpkg --compare-versions -- "$2" le "0.4.6-1"; then
        echo "Upgrading from old onak.conf version"
        if [ -e /etc/onak.conf.dpkg-backup -a ! -e /etc/onak.conf ]; then
                echo "Migrating onak.conf to onak.ini"
                # Old config file was modified; generate a new style
                # file. onak will use the file extension to determine it's
                # an old style config, so we need the symlink.
                ln -s /etc/onak.conf.dpkg-backup /etc/onak.conf
                onak -c /etc/onak.conf dumpconfig /etc/onak.ini
                rm /etc/onak.conf
        fi
    fi

    # Add the onak user
    adduser --system --home /var/lib/onak --no-create-home --disabled-login onak

    # Take ownership of the database and spool directory
    chown onak /var/lib/onak
    chown onak /var/spool/onak

    # Create our logfile
    touch /var/log/onak.log
    chown onak /var/log/onak.log

    #
    # If we're using a default config and there's no onak database, create it
    # by adding my key.
    #
    if grep -q "^backend=defaultdb4" /etc/onak.ini &&
            grep -q "^location=/var/lib/onak" /etc/onak.ini &&
            [ ! -e /var/lib/onak/num_keydb -a \
                -e /usr/share/doc/onak/noodles.key.gz ]; then
        zcat /usr/share/doc/onak/noodles.key | runuser -u onak -- onak -b add
    fi

    # Make the CGI tools setuid onak
    for i in /usr/lib/cgi-bin/pks/*
    do
        if ! dpkg-statoverride --list $i >/dev/null
        then
            dpkg-statoverride --update --add onak root 4755 $i
        fi
    done
fi

#DEBHELPER#

#
# With the move to systemd this will force systemd to start keyd even if it's
# disabled in the onak config file; the systemd service file can't check the
# way the init script does. Work around this by doing the check here and
# only calling invoke-rc.d if it's actually enabled.
#
if grep -q -E '^use_keyd=*(true|yes|1)$' /etc/onak.ini; then
    invoke-rc.d onak start || exit $?
fi