summaryrefslogtreecommitdiff
path: root/mail/cyrus-imapd
diff options
context:
space:
mode:
authorStefan Bethke <stb@FreeBSD.org>1998-09-23 15:37:34 +0000
committerStefan Bethke <stb@FreeBSD.org>1998-09-23 15:37:34 +0000
commitf112c70a67496389272e2044c6cfa62410aa4500 (patch)
tree9a76ec52fad92dbbbd4c63eb9340352a516443b8 /mail/cyrus-imapd
parentUpdate to 1.5.14 (diff)
Will work better with this one...
Notes
Notes: svn path=/head/; revision=13361
Diffstat (limited to 'mail/cyrus-imapd')
-rw-r--r--mail/cyrus-imapd/pkg-install62
1 files changed, 62 insertions, 0 deletions
diff --git a/mail/cyrus-imapd/pkg-install b/mail/cyrus-imapd/pkg-install
new file mode 100644
index 000000000000..1b0ea1ddecc8
--- /dev/null
+++ b/mail/cyrus-imapd/pkg-install
@@ -0,0 +1,62 @@
+#!/bin/sh
+
+#set -vx
+
+#
+# create 'cyrus' user and group before installing
+#
+
+create() {
+ if [ ! -x /usr/sbin/pw ]; then
+ echo "*** Please add a user and a group named \`cyrus' before installing this package."
+ exit 69
+ fi
+
+ if ! pw show group cyrus -q >/dev/null; then
+ gid=60
+ while pw show group -g ${gid} -q >/dev/null; do
+ gid=`expr ${gid} + 1`
+ done
+ if ! pw add group cyrus -g ${gid}; then
+ e=$?
+ echo "*** Failed to add group \`cyrus'. Please add it manually."
+ exit ${e}
+ fi
+ echo "*** Added group \`cyrus' (id ${gid})"
+ else
+ gid=`pw show group cyrus 2>/dev/null | cut -d: -f3`
+ fi
+
+ if ! pw show user cyrus -q >/dev/null; then
+ uid=60
+ while pw show user -u ${uid} -q >/dev/null; do
+ uid=`expr ${uid} + 1`
+ done
+ if ! pw add user cyrus -u ${uid} -g ${gid} -d "/nonexistent" \
+ -c "the cyrus mail server" -s "/nonexistent" -p "*" \
+ ; then
+ e=$?
+ echo "*** Failed to add user \`cyrus'. Please add it manually."
+ exit ${e}
+ fi
+ echo "*** Added user \`cyrus' (id ${uid})"
+ else
+ if ! pw mod user cyrus -g ${gid} -d "/nonexistent" \
+ -c "the cyrus mail server" -s "/nonexistent" -p "*" \
+ ; then
+ e=$?
+ echo "*** Failed to update user \`cyrus'."
+ exit ${e}
+ fi
+ echo "*** Updated user \`cyrus'."
+ fi
+ if ! pw group mod cyrus -m daemon; then
+ echo "*** can't add user \`daemon' to group \`cyrus'"
+ fi
+}
+
+case $2 in
+ PRE-INSTALL)
+ create
+ ;;
+esac