• Bug#1103429: dhcpcd-base: Move hooks to /usr/libexec ?

    From Laurent Bigonville@21:1/5 to All on Thu Apr 17 15:30:01 2025
    Package: dhcpcd-base
    Version: 1:10.1.0-9
    Severity: wishlist

    Hello,

    I see that dhcpcd installs hooks in /usr/lib/dhcpcd/ but today, debian
    allows to install executable files in /usr/libexec and a lot of packages
    are doing so.

    Would be a good idea to move the dhcpcd-run-hooks and the dhcpcd-hooks directory to /usr/libexec

    To achieve this, just remove the --libexecdir flag in debian/rules

    Kind regards,
    Laurent Bigonville


    -- System Information:
    Debian Release: trixie/sid
    APT prefers unstable-debug
    APT policy: (500, 'unstable-debug'), (500, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
    Architecture: amd64 (x86_64)

    Kernel: Linux 6.13-amd64 (SMP w/12 CPU threads; PREEMPT)
    Locale: LANG=fr_BE.UTF-8, LC_CTYPE=fr_BE.UTF-8 (charmap=UTF-8), LANGUAGE=fr_BE:fr
    Shell: /bin/sh linked to /usr/bin/dash
    Init: systemd (via /run/systemd/system)
    LSM: AppArmor: enabled

    Versions of packages dhcpcd-base depends on:
    ii adduser 3.150
    ii libc6 2.41-7
    ii libssl3t64 3.5.0-1
    ii libudev1 257.5-2

    dhcpcd-base recommends no packages.

    Versions of packages dhcpcd-base suggests:
    ii systemd-resolved [resolvconf] 257.5-2

    -- no debconf information

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?Martin=2D=C3=89ric_Racine@21:1/5 to All on Thu Apr 17 15:40:02 2025
    to 17.4.2025 klo 16.27 Laurent Bigonville (bigon@debian.org) kirjoitti:

    Package: dhcpcd-base
    Version: 1:10.1.0-9
    Severity: wishlist

    Hello,

    I see that dhcpcd installs hooks in /usr/lib/dhcpcd/ but today, debian
    allows to install executable files in /usr/libexec and a lot of packages
    are doing so.

    Would be a good idea to move the dhcpcd-run-hooks and the dhcpcd-hooks directory to /usr/libexec

    To achieve this, just remove the --libexecdir flag in debian/rules

    The problem is that since hooks are not executable scripts per-se,
    merely script fragments, Lintian responds with:

    W: dhcpcd-base: executable-not-elf-or-script [usr/libexec/dhcpcd-hooks/*]

    Martin-Éric

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?Martin=2D=C3=89ric_Racine@21:1/5 to All on Sat Apr 19 14:10:01 2025
    On Thu, 17 Apr 2025 16:36:43 +0300
    =?UTF-8?Q?Martin=2D=C3=89ric_Racine?= <martin-eric.racine@iki.fi>
    wrote:
    to 17.4.2025 klo 16.27 Laurent Bigonville (bigon@debian.org) kirjoitti:

    Package: dhcpcd-base
    Version: 1:10.1.0-9
    Severity: wishlist

    Hello,

    I see that dhcpcd installs hooks in /usr/lib/dhcpcd/ but today, debian allows to install executable files in /usr/libexec and a lot of packages are doing so.

    Would be a good idea to move the dhcpcd-run-hooks and the dhcpcd-hooks directory to /usr/libexec

    To achieve this, just remove the --libexecdir flag in debian/rules

    The problem is that since hooks are not executable scripts per-se,
    merely script fragments, Lintian responds with:

    W: dhcpcd-base: executable-not-elf-or-script [usr/libexec/dhcpcd-hooks/*]

    I'd really like to hear Lintian maintainers' opinion on this one.

    W: dhcpcd-base: executable-not-elf-or-script [usr/libexec/dhcpcd-hooks/01-test] W: dhcpcd-base: executable-not-elf-or-script [usr/libexec/dhcpcd-hooks/20-resolv.conf]
    W: dhcpcd-base: executable-not-elf-or-script [usr/libexec/dhcpcd-hooks/30-hostname]
    W: dhcpcd-base: executable-not-elf-or-script [usr/libexec/dhcpcd-hooks/50-timesyncd.conf]

    None of the above have any shebang, because they are merely script
    fragments sourced by /usr/libexec/dhcpcd-run-hooks (which has the
    expected shebang). Could Lintian perhaps not report the above warning
    if the files are in a subdirectory of /usr/libexec?

    Martin-Éric

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Daniel =?utf-8?Q?Gr=C3=B6ber?=@21:1/5 to Laurent Bigonville on Wed Apr 30 14:30:01 2025
    Hi Laurent,

    On Thu, Apr 17, 2025 at 03:24:33PM +0200, Laurent Bigonville wrote:
    Would be a good idea to move the dhcpcd-run-hooks and the dhcpcd-hooks directory

    So we're talking about these:

    /usr/lib/dhcpcd/dhcpcd-hooks/01-test
    /usr/lib/dhcpcd/dhcpcd-hooks/20-resolv.conf
    /usr/lib/dhcpcd/dhcpcd-hooks/30-hostname

    [move] to /usr/libexec

    To what end?

    Consider that people outside of Debian could be installing their own hooks
    here which might cause breakage. Why risk it with change if we're not
    trying to achive anything?

    In any case since these aren't executable files they should clearly live in /usr/share. Let the FHS bikeshedding begin ;-).

    Honestly though. These seem similar to systemd's /usr/lib/systemd tree
    which has files with a similar purpose.

    Looking more closesly at dhcpcd-base I'm actually confused. In addtion to /usr/lib/dhcpcd/dhcpcd-hooks/ there's also eg. /usr/share/dhcpcd/hooks/
    wich has more numbered scripts:

    /usr/share/dhcpcd/hooks/10-wpa_supplicant
    /usr/share/dhcpcd/hooks/15-timezone
    /usr/share/dhcpcd/hooks/29-lookup-hostname

    What's the difference?

    --Daniel

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCAAdFiEEV6G/FbT2+ZuJ7bKf05SBrh55rPcFAmgSFW4ACgkQ05SBrh55 rPfNARAAsqhSufVMoXiNBszNJKCwAjzj/dEYMfdv42u+xLjUhdt5YG9pJtvmf72z BEcLMVUvKAUGhdcVUvRq+3Q+Fo6JKD1b/NiLl82OYxM4aQaAMveGpilwRDeWtVnf bYYSSuwI+MkMqRCzekqMWC42zFqSghLdUcscwTJl66s9tN7AtgVRTbsDZ/LgJW1I qpUr6tzFLuJwAN4TMq0fmEGzUJqazwGdollwGXKCgebWRKpUM00iy9WNdZzt7hV1 av91X19BmWFCTLPpwFknEslfvZwxChnMvDDmOHExBYOSLkpOwec3YoiDcKbFcSIc brW2wy7tjjP3aCLB5dzNM6f1uyYW9dXauYlHpj0Zj7U7kTzMEADFsDOaj/FwI/iF Cxxa9Bw/G3+EHi9QifAGTnCHc0px+CZJQZu7lXb0OUYIbdNkwF/Mh68QUimgAwju deavXWGy4rswR8dCnOAzjmTFx8aGryBN7nqM3ZeMma+FhsSLHzrzA5ou/fz5CUmU YvZXg5NRd5Z7qf4Xs0D0nqyxue+4kamDAYMLvuMX2fk3j0MeZBURVUAekTufwahW 4U95SrRo18Dxeldl01NDHPkv43DwELdLvtYGXI+GhERgOSNWF0mkwBdJ1xkxL2t/ SqicM2n//VAAa56pAH+6wmzmDjUhAgBY/qIxqC7SrggNW55iSIk=
    =X4gT
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)