On Friday, 15 November 2019 5:58:02 AM AEDT Jamie Bliss wrote: > 1. As I understand it, libexec is an acceptable place for binaries
Barely acceptable and non-compliant (but not in violation) with policy. Note that ยง9.1.1 of the policy do not mention "libexec" at all: https://www.debian.org/doc/debian-policy/ch-opersys.html#file-system-hierarchy I'd like to encourage you to inspect your own system to see if you find anything in "/usr/libexec" other than packages that should have similar bugs filed against them. Certainly "/usr/libexec" is an unusual location for Debian. > if they're not supposed to be called by the user. Usually "/usr/lib/{PACKAGE}" is used in such cases. > Conmon is not meant to be > run by the user, but is somewhat internal to the container runtime. That may be right yet unrelated to incorrect placement of the binary. For instance I doubt it is necessary to emphasize relationships with Podman by installing the binary into "podman" sub-folder: "/usr/libexec/podman/conmon" > (I'll concede, this is debatable, `/usr/libexec/podman/conmon -h` produces human-readable help. Compare it to "nomad-driver-lxc" binary (intended for private consumption by Nomad) that just responds with the following: "This binary is a plugin. These are not meant to be executed directly." FYI I install "nomad-driver-lxc" binary to "/usr/lib/nomad" because such binary is used exclusively by Nomad. Conmon appears to have a UI which suggests that it could be used directly by the user. > and I'm not familiar with the intricacies if applying Debian policy.) IMHO there is little intricacy in this case... > 2. The conmon package exists in Debian because it is a dependency of podman > (not yet packaged), Already packaged by yours truly and waiting in NEW. :) > and podman searches in specific places for conmon. We can control the default list of locations in Podman package. > Changing this list of places can be surprisingly difficult (as I > discovered when I tried to add a /usr/local path upstream). Not difficult at all: it is in the "/etc/containers/libpod.conf" (line 8), where list of paths is defined as follows: ~~~~ conmon_path = [ "/usr/bin/conmon", "/usr/sbin/conmon", "/usr/libexec/podman/conmon", "/usr/local/libexec/crio/conmon", "/usr/lib/podman/bin/conmon", "/usr/libexec/crio/conmon", "/usr/lib/crio/bin/conmon" ] ~~~~ I'm going to revise defaults and probably remove some paths from there. We can easily harmonize location of "conmon" between our packages. -- Best wishes, Dmitry Smirnov. --- "We must respect the other fellow's religion, but only in the sense and to the extent that we respect his theory that his wife is beautiful and his children smart. -- H. L. Mencken
signature.asc
Description: This is a digitally signed message part.

