summaryrefslogtreecommitdiffstats
path: root/sysutils/hal/files/pkg-install.in
blob: 59505fc305056ad72d1f83b22e79b49dd7b4b35a (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
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
#!/bin/sh

case $2 in
POST-INSTALL)
    USER=haldaemon
    GROUP=${USER}
    UID=560
    GID=${UID}
    PW=/usr/sbin/pw

    if ${PW} group show "${GROUP}" 2>/dev/null; then
        echo "You already have a group \"${GROUP}\", so I will use it."
    else
        if ${PW} groupadd ${GROUP} -g ${GID}; then
            echo "Added group \"${GROUP}\"."
        else
            echo "Adding group \"${GROUP}\" failed..."
            exit 1
        fi
    fi

    if ${PW} user show "${USER}" 2>/dev/null; then
        echo "You already have a user \"${USER}\", so I will use it."
    else
        if ${PW} useradd ${USER} -u ${UID} -g ${GROUP} -h - \
            -d "/nonexistent" -s /sbin/nologin -c "HAL Daemon User"
        then
            echo "Added user \"${USER}\"."
        else
            echo "Adding user \"${USER}\" failed..."
            exit 1
        fi
    fi

    /usr/bin/install -d -o ${USER} -g ${GROUP} /var/run/hald
    /usr/bin/install -d -o ${USER} -g ${GROUP} /var/cache/hald
    /usr/bin/install -d -o ${USER} -g ${GROUP} /var/lib/hal
    %%LOCALBASE%%/bin/polkit-auth --user ${USER} --grant \
        org.freedesktop.policykit.read

    for pair in %%RC_FILES%%; do
        file=`echo $pair | cut -f 1 -d :`
        destdir=`echo $pair | cut -f 2 -d :`

        if [ ! -f $destdir/$file ]; then
                mkdir -p $destdir
            cp -p %%DATADIR%%/dist/$file $destdir/$file
        fi
    done
    exit 0
    ;;
esac