All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 00/18 v3] system: add support for merged-bin (branch yem/merged-bin)
@ 2025-09-01  9:01 Yann E. MORIN via buildroot
  2025-09-01  9:01 ` [Buildroot] [PATCH 01/18 v3] system: reword merged-usr prompt Yann E. MORIN via buildroot
                   ` (19 more replies)
  0 siblings, 20 replies; 26+ messages in thread
From: Yann E. MORIN via buildroot @ 2025-09-01  9:01 UTC (permalink / raw)
  To: buildroot
  Cc: Edgar Bonet, Sen Hastings, Yann E . MORIN, Thomas Petazzoni,
	Romain Naour, Arnout Vandecappelle, Giulio Benetti, Norbert Lange

Hello All!

This series introduces support for so-called merged-bin, where /usr/sbin
is merged with /usr/bin, as an extra step after merged-usr, now just
requested, but in the future required, by systemd.

The series is organised in a few steps:

 1. patches 1-3 are cleanups in the Kconfig menu, related to the
    merged-usr prompt, to the defaults for PATH, and to the rationale
    for selecting merged-usr with systemd; those can be applied without
    considering the rest of the series;

 2. then patches 4-9 prepare support/scripts/check-merged-usr.sh to
    check for more than merged-usr: a good cleanup, and better check the
    merged state; those patch can also be applied without considering
    the rest of the series;

 3. with patches 9-12, support for merged-bin is added, and the merge
    level of skeleton and overlays properly enforced to match the
    configured merge setup; those require the two set of patches above
    to be applied first;

 4. then, patches 13-17 introduce workarounds for a few packages to
    properly support merged-bin. For ease of review, those are separate
    patches, but that means the series _may_ break if the merged-bin
    support is applied but not these per-package workarounds; these
    require that all patches above be applied first, of course;

 5. the last patch makes merged-bin mandatory for systemd and extend the
    systemd runtime test to catch future tainted flag; again, that
    requires that everything before is applied, too.

The series was tested with a large set of packages and a large set of
toolchains, and although it is a critical change, it is still pretty
well confined to just a few spots.

Changes v2 -> v3;
  - add fix for merged-bin to net-tools

Changes v1 -> v2:
  - add Arnout's Acked-by tag where appropriate
  - totally rewrite the test for merged status
  - reject unexpectedly merged skeletons or overlays
  - add runtime test to catch systemd tainted flags
  - typos

Regards,
Yann E. MORIN.


----------------------------------------------------------------
Yann E. MORIN (18):
      system: reword merged-usr prompt
      system: drop superfluous negative condition for default PATH
      package/systemd: select merged-usr from package, not init
      support/scripts: comonalise checking merged status
      support/scripts: prepare for a more complex check for merged directories
      support/scripts: also exit in error on improperly merged-usr
      support/scripts: move merged-usr errors message into check-merged-usr.sh
      support/scripts: fix and restrict conditions to accept merged dirs
      support/scripts: rename check-merged-usr.sh
      support/scripts; teach check-merged what to check
      system: add support for merged /usr/sbin (aka merged-bin)
      support/scripts: reject skeletons or overlays that are unexpectedly merged
      package/coreutils: no need for chroot workaround with merged-bin
      package/kmod: adjust paths for merged-bin
      package/util-linux: adjust paths for merged-bin
      package/net-tools: no need for ifconfig+route workarounds with merged-bin
      toolchain/external: support merged-bin
      package/systemd: require merged-bin

 Makefile                                   |  19 ++--
 package/coreutils/coreutils.mk             |   2 +
 package/kmod/kmod.mk                       |  12 ++-
 package/net-tools/net-tools.mk             |  10 +-
 package/skeleton-custom/skeleton-custom.mk |  25 ++---
 package/systemd/Config.in                  |   2 +
 package/util-linux/util-linux.mk           |   8 +-
 support/scripts/check-merged               | 146 +++++++++++++++++++++++++++++
 support/scripts/check-merged-usr.sh        |  39 --------
 support/testing/tests/init/test_systemd.py |  19 ++++
 system/Config.in                           |  20 ++--
 system/skeleton/usr/sbin/.empty            |   0
 system/system.mk                           |  14 ++-
 toolchain/helpers.mk                       |   8 +-
 14 files changed, 240 insertions(+), 84 deletions(-)
 create mode 100755 support/scripts/check-merged
 delete mode 100755 support/scripts/check-merged-usr.sh
 delete mode 100644 system/skeleton/usr/sbin/.empty

--
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2025-11-21 13:55 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-01  9:01 [Buildroot] [PATCH 00/18 v3] system: add support for merged-bin (branch yem/merged-bin) Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 01/18 v3] system: reword merged-usr prompt Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 02/18 v3] system: drop superfluous negative condition for default PATH Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 03/18 v3] package/systemd: select merged-usr from package, not init Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 04/18 v3] support/scripts: comonalise checking merged status Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 05/18 v3] support/scripts: prepare for a more complex check for merged directories Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 06/18 v3] support/scripts: also exit in error on improperly merged-usr Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 07/18 v3] support/scripts: move merged-usr errors message into check-merged-usr.sh Yann E. MORIN via buildroot
2025-11-05 10:52   ` Romain Naour via buildroot
2025-11-05 15:59     ` Yann E. MORIN via buildroot
2025-11-05 20:53       ` Romain Naour via buildroot
2025-11-20 20:52   ` Thomas Petazzoni via buildroot
2025-11-21 13:55     ` Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 08/18 v3] support/scripts: fix and restrict conditions to accept merged dirs Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 09/18 v3] support/scripts: rename check-merged-usr.sh Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 10/18 v3] support/scripts; teach check-merged what to check Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 11/18 v3] system: add support for merged /usr/sbin (aka merged-bin) Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 12/18 v3] support/scripts: reject skeletons or overlays that are unexpectedly merged Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 13/18 v3] package/coreutils: no need for chroot workaround with merged-bin Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 14/18 v3] package/kmod: adjust paths for merged-bin Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 15/18 v3] package/util-linux: " Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 16/18 v3] package/net-tools: no need for ifconfig+route workarounds with merged-bin Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 17/18 v3] toolchain/external: support merged-bin Yann E. MORIN via buildroot
2025-09-01  9:01 ` [Buildroot] [PATCH 18/18 v3] package/systemd: require merged-bin Yann E. MORIN via buildroot
2025-10-11 19:34 ` [Buildroot] [PATCH 00/18 v3] system: add support for merged-bin (branch yem/merged-bin) Yann E. MORIN via buildroot
2025-11-05 22:31 ` Romain Naour via buildroot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.