[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#895136: debian-policy: §9.1.2 - Contains example that is misleadingly different than what the policy mandates



Package: debian-policy
Version: 4.1.4
Severity: normal

Last paragraph of 9.1.2 reads:

"""
If /etc/staff-group-for-usr-local does not exist, /usr/local and all
subdirectories created by packages should have permissions 0755 and be
owned by root:root. If /etc/staff-group-for-usr-local exists,
/usr/local and subdirectories should have permissions 2775
(group-writable and set-group-id) and be owned by root:staff.
"""

In the middle of 9.1.2, there is the following example of how to do
directory creation in /usr/local:

"""
if [ ! -e /usr/local/share/emacs ]; then
    if mkdir /usr/local/share/emacs 2>/dev/null; then
        if chown root:staff /usr/local/share/emacs; then
            chmod 2775 /usr/local/share/emacs || true
        fi
    fi
fi
"""

The example is way too simple to comply with policy.  A more compliant
example would be:

"""
if [ ! -e /usr/local/share/emacs ]; then
    if mkdir /usr/local/share/emacs 2>/dev/null; then
        if test -e /etc/staff-group-for-usr-local ; then
            if chown root:staff /usr/local/share/emacs; then
                chmod 2775 /usr/local/share/emacs || true
            fi
        elif chown root:staff /usr/local/share/emacs; then
            chmod 2775 /usr/local/share/emacs || true
        fi
    fi
fi
"""

Thanks,
~Niels


Reply to: