Seems referenced here. Frustrating but thanks for pointing me in the right 
direction
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=18567 




On Friday, April 5, 2019, 2:27 PM, Scott Kitterman <deb...@kitterman.com> wrote:

On Friday, April 05, 2019 09:46:09 AM Michael Krieger wrote:
> Package: postfix
> Version: 3.4.5-1
> Severity: normal
> 
> Upgrading from 3.4.4 to 3.4.5-1, I see the following messages after a 'su'
> to root Preconfiguring packages ...
>     Can't exec "postconf": No such file or directory at
> /tmp/postfix.config.swGX60 line 220, <STDIN> line 14. Can't exec
> "postconf": No such file or directory at /tmp/postfix.config.swGX60 line
> 284, <STDIN> line 16. Can't exec "postconf": No such file or directory at
> /tmp/postfix.config.swGX60 line 386, <STDIN> line 21.
> 
> It most certainly relates to the news article at
>  
> https://sources.debian.org/src/util-linux/2.33.1-0.1/debian/util-linux.NEWS
> / however, that is no reason for the postfix preconfig to fail (and who
> knows what change I missed there)
> 
> The script should err on the side of caution, knowing full-well where
> postconf is and that it is required, and add /usr/sbin and /sbin to the
> PATH in the scripts. Right now it (potentially) fails to do what it is
> supposed to do with a $PATH it can't control.

If there is a bug here, it's probably in dpkg.  I think that the postfix 
package is aligned to policy and Debian best practices.  See below.  Please 
review and consider if this should be reassigned.

Here's an extract from policy 6.1:

Programs called from maintainer scripts should not normally have a path 
prepended to them. Before installation is started, the package management 
system checks to see if the programs ldconfig, start-stop-daemon, and update-
rc.d can be found via the PATH environment variable. Those programs, and any 
other program that one would expect to be in the PATH, should thus be invoked 
without an absolute pathname. Maintainer scripts should also not reset the 
PATH, though they might choose to modify it by prepending or appending 
package-specific directories. These considerations really apply to all shell 
scripts.

There is a related lintian [1] check which says, in part:

Programs called from maintainer scripts normally should not have a path 
prepended. dpkg ensures that the PATH is set to a reasonable value, and 
prepending a path may prevent the local administrator from using a replacement 
version of a command for some local reason.

Scott K

[1] https://lintian.debian.org/tags/command-with-path-in-maintainer-script.html



Reply via email to