Package: cyrus21-common Version: 2.1.18-3 Severity: grave Justification: renders package unusable
today an "apt-get -u dist-upgrade" failed with Non-system user cyrus found. I will not overwrite a non-system user. Remove the user and reinstall cyrus21-common. for cyrus21-common and with unmet dependencies for cyrus21-imapd afterwards. Removing the user and reinstalling cyrus-common didn't work either (sorry, I forgot to capture the error message) Investigation showed that adduser in the "configure-" section of postinst returns with a non-zero exit code, if the system user to add is already present and _is_ a system user. The appended "grep"-code cannot distinguish a system- from a non-system user and if so would only have changed the error message. The included patch changes the behavior of postinst to re-use an existing cyrus system user, which I believe is, what was intended. --- postinst.org 2006-01-20 12:47:27.000000000 +0100 +++ postinst 2006-02-12 16:51:06.400370750 +0100 @@ -52,16 +52,23 @@ configure) # Add the cyrus user (requires adduser >= 3.34) echo "Creating/updating cyrus user account..." + . /etc/adduser.conf 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 - echo "Non-system user cyrus found. I will not overwrite a non-system" >&2 - echo "user. Remove the user and reinstall cyrus21-common." >&2 - exit 1 - fi - # unknown adduser error, simply exit - exit 1 + if ! getent passwd | \ + awk -F: -v FSU=$FIRST_SYSTEM_UID -v LSU=$LAST_SYSTEM_UID ' + $1 ~/^cyrus/ { + if (($3 < FSU) || ($3 > LSU)) + exit 1 + else + exit 0 + }' + then + echo "Non-system user cyrus found. I will not overwrite a non-system" >&2 + echo "user. Remove the user and reinstall cyrus21-common." >&2 + exit 1 + fi } # Force correct owner and modes -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.14.2 Locale: LANG=C, LC_CTYPE=C (charmap=ISO-8859-1) (ignored: LC_ALL set to en_US) Versions of packages cyrus21-common depends on: ii adduser 3.82 Add and remove users and groups ii debconf [debcon 1.4.70 Debian configuration management sy ii dpkg 1.13.13 package maintenance system for Deb ii gawk 1:3.1.5-1 GNU awk, a pattern scanning and pr ii libc6 2.3.5-13 GNU C Library: Shared libraries an ii libdb3 3.2.9-23 Berkeley v3 Database Libraries [ru ii libsasl2 2.1.19-1.9 Authentication abstraction library ii libssl0.9.8 0.9.8a-6 SSL shared libraries ii libwrap0 7.6.dbs-8 Wietse Venema's TCP wrappers libra ii libzephyr3 2.1.20010518.SNAPSHOT-15 The original "Instant Message" sys ii netbase 4.24 Basic TCP/IP networking system ii perl 5.8.8-1 Larry Wall's Practical Extraction ii postfix [mail-t 2.2.8-9 A high-performance mail transport Versions of packages cyrus21-common recommends: ii cyrus21-imapd 2.1.18-3 Cyrus mail system (IMAP support) -- debconf-show failed -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]