<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 18 Sept 2023, 17:43 Nils Kattenbeck, <<a href="mailto:nilskemail@gmail.com">nilskemail@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> Why was the decision taken to put these into /usr/lib/systemd instead of<br>
> /usr/libexec/systemd/?<br>
<br>
That's a Fedoraism. Why would one put something there?<br>
<br>
/usr/lib/ is where private arch-dependent package stuff goes. What's<br>
the rationale for /usr/libexec/ though?<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">I am not aware of it being a Fedoraism. It is at least also used/populated on an Ubuntu server I use and documented as part of the filesystem hierarchy (hier(7)): <a href="https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s07.html#ftn.idm236091914528" target="_blank" rel="noreferrer">https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s07.html#ftn.idm236091914528</a></div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">On Ubuntu we mostly use multiarch locations for shared libraries i.e. /usr/lib/(arch triplet) and /usr/libexec/(native only binaries). To allow us to have additional places for native only and cross only tools. But it is not set in stone. Many gnome, KDE, dbus things ship their binaries or daemons or plugins under /usr/libexec. It sort of makes sense as /usr/lib is confusing when it mixes public libraries, with private libraries and binaries.</div><div dir="auto"><br></div><div dir="auto">We can move things around in systemd as well, but on grand scheme of things it is fairly minor tidy up, as neither locations are in default executable paths. /usr/lib is in library search path, which was recently abused to attack remote hosts to load unintended libraries at runtime and clear nx (the recent ssh attack is hallarious and did use systemd to show really fun stuff). So keeping only public libraries in /usr/lib going forward might be a good idea.</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>
</blockquote></div></div></div>