Perhaps something like this would be desirable?

--- cyrus-common-2.2.postinst   2006-02-11 02:57:41.000000000 -0500
+++ cyrus-common-2.2.postinst.new       2006-02-12 04:20:34.000000000 -0500
@@ -55,7 +55,8 @@
        adduser --system --ingroup mail --home /var/spool/cyrus \
            --shell /bin/sh --disabled-password \
           --gecos "Cyrus Mailsystem User"  cyrus >/dev/null 2>&1 || {
-          if getent passwd | grep -s -q -E '^cyrus:'; then
+          uid=`getent passwd | egrep -s '^cyrus:'|cut -d':' -f3`
+          if [ ${uid} -gt 999 ]; then
                   echo "Non-system user cyrus found. I will not overwrite a 
non-system" >&2
                   echo "user. Remove the user and reinstall cyrus-common-2.2." 
>&2
                   exit 1


There's probably a cleaner way to check if cyrus is the system user, but this
seems to work...

Attachment: signature.asc
Description: Digital signature

Reply via email to