On Thu, Oct 27, 2011 at 02:51, Kay Sievers <kay.sievers(a)vrfy.org> wrote:
On Thu, Oct 27, 2011 at 10:46, Harald Hoyer
> 4.6. /usr/lib : Libraries for programming and packages
> 4.6.1. Purpose
> /usr/lib includes object files and libraries. ^ On some systems, it
> may also include internal binaries that are not intended to be executed
> directly by users or shell scripts. ^
/usr/lib/<pkgname>/ is the preferred way to do it. Udev does this
since forever, and systemd does the same. LSB itself uses
I think 'libexec' is just a weird name, and should be faded out over
time. Fedora was the only major distro which used that, it never
existed on other distributions, and we want less needless differences
I believe it was a GNUism or BSDism from the early 1990's.. I remember
seeing libexec in Makefiles and autoconf's from time immemorial
(circa 1994?) as its use was two fold:
1) Remove binaries from /usr/lib in the same way /sbin removed items from /etc
2) Speed up ld search times on *n*x's that searched linearly through
the directory for symbols.
IIRC Red Hat used it because we were trying to be friendly with FSF
complaints way back in the day and patching all the code to not use it
was more time consuming than the 4 developers wanted to deal with.
Debian didn't use it for the same reason (they were in a tif with FSF
at the time, and patching it showed they were independent.)
In any case that is the most likely historical reason for it. If you
really want to get rid of it.. might as well start looking at building
a LOT of patches.
What we want for sane packaging is an 'application private
not something just for executables. Application configuration like
udev rules or systemd service files (init scripts) need to live in
that directory too, and 'libexec' really doesn't sound right for that.
devel mailing list
Stephen J Smoogen.
"The core skill of innovators is error recovery, not failure avoidance."
Randy Nelson, President of Pixar University.
"Let us be kind, one to another, for most of us are fighting a hard
battle." -- Ian MacLaren