Hello Craig, Thank you for your report!
Am Thu, 19 Mar 2020 14:14:42 +1100 schrieb Craig Sanders <c...@taz.net.au>: > Package: munin > Version: 2.0.57-1 > > At the bottom of the /etc/init.d/munin script are two lines: > > do_stop_cmd_override() true > do_start_cmd_override() true > > This is **NOT** how you define a shell function. indeed - how embarrassing :( (but see below for details) > Without this patch (attached), upgrading munin to 2.0.57-1 leaves the package > in a broken (installed/Failed-config, or "iF") state and results in the > following: > [..] I am very confused, that this did not fail during munin's autopkgtest (or on my system). After digging around for a while (including successful fresh installations or upgrades on systemd-based hosts), I think I found the issue: $ dash -c "foo() true"; echo $? 0 $ bash -c "foo() true"; echo $? bash: -c: line 0: syntax error near unexpected token `true' bash: -c: line 0: `foo() true' 1 After taking a closer look at the man pages of both shell implementations, this seems to be in line with their respective documentations: 1) dash Syntax: name () command Thus *any* command is allowed (including "true"). 2) bash Syntax: name () compound-command Here "compound-command" means any non-trivial command, e.g. surrounded by braces or "if ...; fi" and so on. A single command ("true") is not explicitly mentioned and obviously is rejected. Thus I assume, that you are using bash as your "sh" implementation? I will fix this issue in the next packaging update. Thank you! Cheers, Lars