summaryrefslogtreecommitdiff
path: root/net/phpldapadmin098/pkg-install-suphp
blob: 6348afacd7a69cc9bbe555a5640438d993e4c28f (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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#!/bin/sh
#
# $FreeBSD$
#

PATH=/usr/sbin:/usr/bin:/bin ; export PATH

pladir=%%PREFIX%%/%%PLADIR%%
plausr=%%PLAUSR%%
plagrp=%%PLAGRP%%

plagcos="phpLDAPadmin Owner"
plahome=/nonexistent
plashell=/sbin/nologin

create_group() {
    local user group gcos home shell

    user=$1
    group=$2
    gcos=$3
    home=$4
    shell=$5

    if pw groupadd -n $group ; then
	echo "===> Group $group created"
    else
	cat <<-EOERRORMSG
	*** Failed to create the $group group.

	Please add the $user user and $group group
	manually with the commands:

	    pw groupadd -n $group
	    pw useradd -n $user -g $group -c "$gcos" \\
	        -d $home -s $shell -h -
	    
	and retry installing this package.
	EOERRORMSG
	exit 1
    fi
}


create_user() {
    local user group gcos home shell

    user=$1
    group=$2
    gcos=$3
    home=$4
    shell=$5

    if pw useradd -n $user -g $group -c "$gcos" -d $home -s $shell -h - ; then
	echo "===> Created $user user"
    else
	cat <<-EOERRORMSG
	*** Failed to create the $user user.

	Please add the $user user manually with the command:

	    pw useradd -n $user -g $group -c "$gcos" \\
		        -d $home -s $shell -h -

	and retry installing this package.
	EOERRORMSG
	exit 1
    fi
}


case $2 in
    PRE-INSTALL)

        # Create the pla user and group if they do not already exist

        if pw user show -n $plausr >/dev/null 2>&1 ; then
	    echo "===> Using pre-existing user $plausr"
	else
	    if ! pw group show -n $plagrp >/dev/null 2>&1 ; then
		create_group $plausr $plagrp "$plagcos" $plahome \
		    $plashell
	    fi
	    create_user $plausr $plagrp "$plagcos" $plahome $plashell
	fi
	;;
    POST-INSTALL)

    	# Change ownership of the phpLDAPadmin directory

        echo "===> Adjusting file ownership in $pladir"
        chown -R $plausr:$plagrp $pladir || exit 1
	;;
esac

#
# That's All Folks!
#