• Bug#1099842: lintian: maintainer-script-lacks-home-in-adduser recommend

    From Simon McVittie@21:1/5 to All on Sat Mar 8 20:10:01 2025
    Package: lintian
    Version: 2.121.1+nmu1
    Severity: normal
    X-Debbugs-Cc: adduser@packages.debian.org

    Since adduser 3.122, `adduser --system` automatically defaults to
    `--home /nonexistent` if no home directory is specified, so as requested
    by the adduser maintainer in #1099086, I tried changing
    dbus-system-bus-common to stop explicitly saying `--home /nonexistent`.
    I was also asked to stop using --no-create-home, because in adduser 3.130
    or later, there is a special case to never create /nonexistent.

    However, this results in a lintian tag at error level:

    E: dbus-system-bus-common: maintainer-script-lacks-home-in-adduser "adduser --system --quiet --group "$MESSAGEUSER"" [postinst:22]

    and the description of that tag gives advice that contradicts what the
    adduser maintainer requested:

    Please use adduser --no-create-home --home /nonexistent instead.

    I think this tag should probably not be emitted for adduser calls with
    --system and no --home, at least not in packages that have a versioned dependency on adduser (>= 3.130) (but adduser in Debian 12 'bookworm'
    is newer than that, and we officially don't support skipping a release,
    so the versioned dependency is not strictly necessary for packages
    targeting trixie or later).

    This means that in Lintian's test suite, adduser calls like this:

    t/recipes/checks/build-systems/debhelper/maintainer-script/token/scripts-maintainer-general/build-spec/debian/postinst:adduser --system foo

    are actually fine and should not emit this tag:

    t/recipes/checks/scripts/scripts-maintainer-general/eval/hints:scripts-maintainer-general (binary): maintainer-script-lacks-home-in-adduser "adduser --system foo" [postinst:148]

    adduser maintainer cc'd to give the opportunity to confirm or deny my interpretation being correct.

    smcv

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)