diff options
-rw-r--r-- | mail/dovecot2/Makefile | 14 | ||||
-rw-r--r-- | mail/dovecot2/files/pkg-deinstall.in | 59 | ||||
-rw-r--r-- | mail/dovecot2/files/pkg-install.in | 93 | ||||
-rw-r--r-- | mail/dovecot2/pkg-plist | 1 |
4 files changed, 7 insertions, 160 deletions
diff --git a/mail/dovecot2/Makefile b/mail/dovecot2/Makefile index 073f149f0825..b76ec9a9c700 100644 --- a/mail/dovecot2/Makefile +++ b/mail/dovecot2/Makefile @@ -51,10 +51,8 @@ PORTDOCS= * PORTEXAMPLES= * .endif -DOVECOT_UID?= 143 -DOVECOT_GID?= 143 -DOVENULL_UID?= 144 -DOVENULL_GID?= 144 +USERS= ${PORTNAME} dovenull +GROUPS= ${USERS} PROTOCOLS= imap pop3 @@ -159,8 +157,8 @@ CONFIGURE_ARGS+=--without-sqlite PLIST_SUB+= SQL="@comment " .endif -SUB_LIST= REQUIRE="${_REQUIRE}" DOVECOT_UID=${DOVECOT_UID} DOVECOT_GID=${DOVECOT_GID} DOVENULL_UID=${DOVENULL_UID} DOVENULL_GID=${DOVENULL_GID} -SUB_FILES= pkg-install pkg-deinstall pkg-message +SUB_LIST= REQUIRE="${_REQUIRE}" +SUB_FILES= pkg-deinstall pkg-message MAN1= deliver.1 \ doveadm-altmove.1 \ @@ -205,9 +203,6 @@ post-patch: ' ${WRKSRC}/src/auth/mech-gssapi.c ${WRKSRC}/configure .endif -pre-su-install: - @${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL - post-install: .if !defined(NOPORTEXAMPLES) @${MKDIR} ${EXAMPLESDIR} @@ -216,7 +211,6 @@ post-install: .if !defined(NOPORTDOCS) cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR} .endif - @${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL @${CAT} ${PKGMESSAGE} .include <bsd.port.post.mk> diff --git a/mail/dovecot2/files/pkg-deinstall.in b/mail/dovecot2/files/pkg-deinstall.in index 6f7cc06b63df..3ef5dd4d7400 100644 --- a/mail/dovecot2/files/pkg-deinstall.in +++ b/mail/dovecot2/files/pkg-deinstall.in @@ -1,65 +1,10 @@ #! /bin/sh # -# $FreeBSD: /tmp/pcvs/ports/mail/dovecot2/files/pkg-deinstall.in,v 1.1 2010-11-27 05:53:35 glewis Exp $ +# $FreeBSD: /tmp/pcvs/ports/mail/dovecot2/files/pkg-deinstall.in,v 1.2 2011-07-05 16:35:02 crees Exp $ # -PKG_PREFIX=${PKG_PREFIX:=/usr/local} - -ask() { - local question default answer - - question=$1 - default=$2 - if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then - read -p "${question} [${default}]? " answer - fi - echo ${answer:-${default}} -} - -yesno() { - local question default answer - - question=$1 - default=$2 - while :; do - answer=$(ask "${question}" "${default}") - case "${answer}" in - [Yy]*) return 0;; - [Nn]*) return 1;; - esac - echo "Please answer yes or no." - done -} - -delete_account() { - local port user uid group gid - - port=$1 - user=${2%:*} - uid=${2#*:} - group=${3%:*} - gid=${3#*:} - - echo "If you do not intend to reinstall ${port}, you should manually" - echo "remove user '${user}' (uid='${uid}') and group '${group}' (gid='${gid}')." -} - case $2 in - DEINSTALL) - if ps -axc | grep -qw dovecot; then - if yesno "Dovecot is still running. Shall I stop it?" y; then - ${PKG_PREFIX}/etc/rc.d/dovecot stop - sleep 2 - else - echo "OK ... I hope you know what you are doing." - fi - fi - - delete_account Dovecot dovecot:${DOVECOT_UID:-%%DOVECOT_UID%%} dovecot:${DOVECOT_GID:-%%DOVECOT_GID%%} - delete_account Dovecot dovenull:${DOVENULL_UID:-%%DOVENULL_UID%%} dovenull:${DOVENULL_GID:-%%DOVENULL_GID%%} - - echo "Also manually 'rm -rf /var/db/dovecot' if anything was stored there." + echo "If you don't intend on reinstalling this port you should manually 'rm -rf /var/db/dovecot' if anything was stored there." ;; - esac diff --git a/mail/dovecot2/files/pkg-install.in b/mail/dovecot2/files/pkg-install.in deleted file mode 100644 index 28ee06db8662..000000000000 --- a/mail/dovecot2/files/pkg-install.in +++ /dev/null @@ -1,93 +0,0 @@ -#!/bin/sh -# -# $FreeBSD: /tmp/pcvs/ports/mail/dovecot2/files/Attic/pkg-install.in,v 1.1 2010-11-27 05:53:35 glewis Exp $ -# - -PKG_PREFIX=${PKG_PREFIX:=/usr/local} - -ask() { - local question default answer - - question=$1 - default=$2 - if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then - read -p "${question} [${default}]? " answer - fi - echo ${answer:-${default}} -} - -yesno() { - local question default answer - - question=$1 - default=$2 - while :; do - answer=$(ask "${question}" "${default}") - case "${answer}" in - [Yy]*) return 0;; - [Nn]*) return 1;; - esac - echo "Please answer yes or no." - done -} - -create_account() { - local port user uid group gid gcos home shell - - port=$1 - user=${2%:*} - uid=${2#*:} - group=${3%:*} - gid=${3#*:} - gcos=$4 - home=$5 - shell=$6 - - pw_user_uid=$(pw usershow -n "${user}" 2>/dev/null | cut -d: -f3) - pw_uid_user=$(pw usershow -u "${uid}" 2>/dev/null | cut -d: -f1) - pw_group_gid=$(pw groupshow -n "${group}" 2>/dev/null | cut -d: -f3) - pw_gid_group=$(pw groupshow -g "${gid}" 2>/dev/null | cut -d: -f1) - - if [ -z "${pw_group_gid}" -a -z "${pw_gid_group}" ]; then - echo "You need a ${group} group; creating it..." - pw groupadd "${group}" -g "${gid}" || exit - echo "Done." - elif [ "${gid}" = "${pw_group_gid}" -a "${group}" = "${pw_gid_group}" ]; then - echo "Using existing ${group} group." - else - echo "${port} has reserved the groupname '${group}' and gid '${gid}':" - [ -n "${pw_group_gid}" -a "${gid}" != "${pw_group_gid}" ] \ - && echo "ERROR: groupname '${group}' already in use by gid '${pw_group_gid}'" - [ -n "${pw_gid_group}" -a "${group}" != "${pw_gid_group}" ] \ - && echo "ERROR: gid '${gid}' already in use by group '${pw_gid_group}'" - echo "Please resolve these issues and try again:" - echo "Either remove the conflicting group or if you wish to continue using a legacy group override DOVECOT_GID." - exit 1 - fi - - if [ -z "${pw_user_uid}" -a -z "${pw_uid_user}" ]; then - echo "You need a ${user} user; creating it..." - pw useradd "${user}" -u "${uid}" -g "${group}" -c "${gcos}" -d "${home}" -s "${shell}" - echo "Done." - elif [ "${uid}" = "${pw_user_uid}" -a "${user}" = "${pw_uid_user}" ]; then - echo "Using existing ${user} user." - else - echo "${port} has reserved the username '${user}' and uid '${uid}':" - [ -n "${pw_user_uid}" -a "${uid}" != "${pw_user_uid}" ] \ - && echo "ERROR: username '${user}' already in use by uid '${pw_user_uid}'" - [ -n "${pw_uid_user}" -a "${user}" != "${pw_uid_user}" ] \ - && echo "ERROR: uid '${uid}' already in use by user '${pw_uid_user}'" - echo "Please resolve these issues and try again:" - echo "Either remove the conflicting user or if you wish to continue using a legacy user override DOVECOT_UID." - exit 1 - fi -} - -case $2 in - -PRE-INSTALL) - create_account Dovecot dovecot:${DOVECOT_UID:-%%DOVECOT_UID%%} dovecot:${DOVECOT_GID:-%%DOVECOT_GID%%} "Dovecot User" /var/empty /usr/sbin/nologin - create_account Dovecot dovenull:${DOVENULL_UID:-%%DOVENULL_UID%%} dovenull:${DOVENULL_GID:-%%DOVENULL_GID%%} "Dovecot login User" /var/empty /usr/sbin/nologin - ;; - -esac diff --git a/mail/dovecot2/pkg-plist b/mail/dovecot2/pkg-plist index fdb22b354b4d..2c7d0458af5b 100644 --- a/mail/dovecot2/pkg-plist +++ b/mail/dovecot2/pkg-plist @@ -1,3 +1,4 @@ +@stopdaemon dovecot bin/doveadm bin/doveconf bin/dsync |