[Pkg-samba-maint] moving libexec from /usr/lib/$multiarch/ to /usr/libexec/

Michael Tokarev mjt at tls.msk.ru
Sun Apr 3 08:05:24 BST 2022


03.04.2022 09:40, Mathieu Parent wrote:
> On Sat, Apr 2, 2022 at 5:11 PM Michael Tokarev <mjt at tls.msk.ru> wrote:
>>
>> Hi!
>>
>> I'm not sure why we have --libexecdir=/usr/lib/${DEB_HOST_MULTIARCH}
>> in configure options.
> 
> libexec was forbidden in Debian at that time.

Yeah I remember when there was no /usr/libexec/. Even before we moved
to /usr/lib/multiarch/ for most libraries and /usr/lib/ where waay too
cluttered already, the helper binaries were all there anyway.

Now this requiriment (no /usr/libexec) has been removed, and it even
become the preferred place for helper binaries.

At any way, helper binaries should not be in /usr/lib/multiarch/.

>> This makes sense if the (helper) binaries
>> located in there are used by the binaries we're providing *only*,
>> and in particular, can't be used in config files.
>>
>> We already have smbspool_krb5_wrapper which appears to be runnable
>> from some other tool.
> 
> Yes. If we move this file, we need to mention it in the NEWS file.

The thing is: this file already is in *different* places on
different architectures. I wonder if there's any other package
which actually uses it (but it still can be specified in a local
config somewhere).

I don't know how it is supposed to be used. The manpage is not
exactly clear about this. Maybe it is only used by/from
/usr/bin/smbspool, which, in turn, can be used by other packages
or configuration?  If that's the case, we don't need to be
extra noisy about this really.

However, it might be a good thing to mention in ctdb.NEWS, I
think. But even there, I don't see any non-internal stuff
in there in current 4.13 version. In 4.16 we now have this
etcd lock helper which *is* callable by its own, -- that's
this whole question about libexecdir popped up.

I'll take a closer look at what these moved binaries are.
Thank you for the tip!

..
>> I'm applying this change (move from /usr/lib/$multiarch/ to
>> /usr/libexec/ for --libexecdir).  Do you think there might be
>> some issues in there which I don't see, for some other packages?
> 
> Does this introduce a multiarch problem?

No, this is the first thing I checked. The files are in:

  o smbclient (suid smbspool helper)
  o samba (new helper binaries rpc_* and samba_{dcerpcd,bgpd}
  o ctdb

All 3 packages are regular binary packages which install
things into /usr/bin/ and the like.

Some of them have stuff in /usr/lib/$multiarch/samba/ *too*
(and obviously had, before, too), but these are entirely
internal-to-these-packages libs, used from within these
packages only.

Thanks,

/mjt



More information about the Pkg-samba-maint mailing list