Skip to content

star: remove component and drop cpio's now-unused BuildRequires: rmt#17205

Open
PawelWMS wants to merge 1 commit into
tomls/base/mainfrom
pawelwi/star-remove
Open

star: remove component and drop cpio's now-unused BuildRequires: rmt#17205
PawelWMS wants to merge 1 commit into
tomls/base/mainfrom
pawelwi/star-remove

Conversation

@PawelWMS
Copy link
Copy Markdown
Contributor

@PawelWMS PawelWMS commented May 13, 2026

Koji build

Summary

Removes the legacy star SRPM (Joerg Schilling's "Schily" archiver — distinct from GNU tar and bsdtar) from Azure Linux. The star SRPM is failing automated package-signing-pipeline decompression and cannot be published; the sub-packages it produced (star, rmt, scpio, spax) are not required to ship Azure Linux.

The only build-graph edge that kept star in the distro was a spurious BuildRequires: rmt line in cpio.specrmt is the remote-magnetic-tape protocol daemon, only consulted by cpio at runtime via the /etc/rmt path, never at build time. The two changes must land atomically: dropping the BR first leaves star orphaned but still built; dropping star first would FTBFS cpio.

Changes

base/comps/cpio/cpio.comp.toml (new)

Two spec-search-replace overlays that mirror upstream Fedora rawhide commit 84d5a4fe:

  1. Strip the trailing , rmt from cpio.spec's BuildRequires line:
    • BuildRequires: texinfo, autoconf, automake, gettext, gettext-devel, rmt
    • BuildRequires: texinfo, autoconf, automake, gettext, gettext-devel
  2. Drop the rm -f $RPM_BUILD_ROOT%{_libexecdir}/rmt line from %install — stale leftover; cpio no longer builds its own rmt helper under _libexecdir.

A plain spec-remove-tag for the BR would have dropped the entire tag; the scoped spec-search-replace regex preserves the other entries.

Manifest + spec deletions

  • base/comps/components.toml — delete [components.star].
  • base/comps/components-publish-channels.toml — delete "star".
  • specs/s/star/ — delete star.spec, seven Fedora patches, and sources.
  • locks/star.lock — delete.

Validation

  • azldev -q comp render -p cpio — clean (STATUS: ok); both overlays apply; the rendered spec shows the cleaned-up BR line and the deleted %install line.
  • azldev -q comp update -p cpiolocks/cpio.lock refreshed.
  • cpio has no runtime Requires: rmt and no Recommends: rmt, so no consumer of the cpio RPM is affected.

Functionality lost

The star, spax, scpio, rmt packages are no longer published. rmt was niche (remote-magnetic-tape over rsh/ssh); in 2026 the canonical replacements are tar --rmt-command=ssh + OpenSSH on the remote end, or modern dump (not currently in the distro). If a downstream image needs rmt we can import dump later. AZL's tape-archive utility coverage continues via GNU tar and bsdtar.

@PawelWMS PawelWMS force-pushed the pawelwi/star-remove branch 2 times, most recently from 7d8b6a9 to dd36e32 Compare May 14, 2026 00:24
Removes the `star` SRPM (Joerg Schilling's archiver -- distinct from
GNU `tar`) from Azure Linux. The `star` SRPM is failing automated
package-signing-pipeline decompression and cannot be published; the
sub-packages it produced (`star`, `rmt`, `scpio`, `spax`) are not
required to ship Azure Linux.

The only build-graph edge that kept `star` in the distro was a
spurious `BuildRequires: rmt` line in `cpio.spec` -- `rmt` is the
remote-magnetic-tape protocol daemon, only consulted by cpio at
runtime via the `/etc/rmt` path, never at build time. The two
changes must land atomically: dropping the BR first leaves `star`
orphaned but still built; dropping `star` first would FTBFS cpio.

Changes in this commit
----------------------
1. `base/comps/cpio/cpio.comp.toml` -- new dedicated component file
   with two `spec-search-replace` overlays that mirror upstream
   Fedora rawhide commit
   https://src.fedoraproject.org/rpms/cpio/c/84d5a4fe965609681000fd3911b7246c2a6973fb\?branch\=rawhide:

     a. Strip the trailing `, rmt` from `cpio.spec`'s comma-
        separated `BuildRequires` line (line 51 in the upstream
        spec). The rendered effect:

          - BuildRequires: texinfo, autoconf, automake, gettext, gettext-devel, rmt
          + BuildRequires: texinfo, autoconf, automake, gettext, gettext-devel

        A plain `spec-remove-tag` would have dropped the entire
        tag; the scoped regex preserves the rest.

     b. Drop the `rm -f $RPM_BUILD_ROOT%{_libexecdir}/rmt` line
        from `%install`. cpio no longer builds its own `rmt`
        helper under `_libexecdir` (the `--with-rmt=%{_sysconfdir}/rmt`
        configure flag makes cpio call out to `/etc/rmt` at
        runtime), so the deletion is a stale leftover -- same
        upstream Fedora rawhide cleanup.

   The inline `[components.cpio]` declaration in
   `base/comps/components.toml` is replaced with a comment pointer
   to the new file.

2. `base/comps/components.toml` -- delete `[components.star]`.
3. `base/comps/components-publish-channels.toml` -- delete `"star"`
   from the published-component manifest.
4. `specs/s/star/` -- delete the entire spec directory (`star.spec`,
   seven Fedora patches, `sources`). No longer rendered.
5. `locks/star.lock` -- delete the now-stale lock file.

Validation
----------
- cpio render verified locally: both overlays apply; the BR line is
  rewritten and the `rm -f $RPM_BUILD_ROOT%{_libexecdir}/rmt` line
  is gone (`make_install` followed by `rm -f $RPM_BUILD_ROOT%{_infodir}/dir`).
- cpio lock refreshed (`locks/cpio.lock`).
- cpio has no runtime `Requires: rmt` and no `Recommends: rmt`, so
  no consumer of the cpio RPM is affected.
- Tape-archive utility coverage in AZL: GNU `tar` and `bsdtar`
  remain. The legacy Schily `star` / `spax` / `scpio` front-ends
  are not used by any in-distro component.

Functionality lost
------------------
- The `star`, `spax`, `scpio`, `rmt` packages are no longer
  published. `rmt` was niche (remote-magnetic-tape over rsh/ssh);
  in 2026 the canonical replacements are `tar --rmt-command=ssh`
  + OpenSSH on the remote end, or modern `dump` (not currently in
  the distro). If a downstream image needs `rmt` we can import
  `dump` later.
@PawelWMS PawelWMS force-pushed the pawelwi/star-remove branch from dd36e32 to 0c39faf Compare May 14, 2026 00:26
@PawelWMS PawelWMS marked this pull request as ready for review May 14, 2026 00:28
Copilot AI review requested due to automatic review settings May 14, 2026 00:28
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes the legacy star component (and its rendered spec/patch artifacts) from Azure Linux and updates cpio to no longer build-require rmt, eliminating the last build-graph dependency keeping star in the distro.

Changes:

  • Drop the star component from manifests, publish channels, locks, and rendered specs.
  • Introduce a dedicated cpio component definition with overlays to remove BuildRequires: ... rmt and a stale %install cleanup line.
  • Re-render cpio.spec and refresh locks/cpio.lock to reflect the new component inputs.

Reviewed changes

Copilot reviewed 13 out of 15 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
specs/s/star/star.spec Removes rendered spec for star (component deletion).
specs/s/star/star-configure-c99.patch Removes rendered patch artifact for star.
specs/s/star/star-1.6-star-mk.patch Removes rendered patch artifact for star.
specs/s/star/star-1.6-manpagereferences.patch Removes rendered patch artifact for star.
specs/s/star/star-1.6-Change-the-sbin-install-dir-to-bin-due-to-Fedora-Cha.patch Removes rendered patch artifact for star.
specs/s/star/star-1.5.2-use-ssh-by-default.patch Removes rendered patch artifact for star.
specs/s/star/star-1.5.2-rmt-rh-access.patch Removes rendered patch artifact for star.
specs/s/star/star-1.5.2-bufferoverflow.patch Removes rendered patch artifact for star.
specs/s/star/sources Removes rendered sources manifest for star.
specs/c/cpio/cpio.spec Rendered spec update reflecting removal of rmt BR and stale %install line.
locks/star.lock Removes star lockfile as component is deleted.
locks/cpio.lock Updates cpio lock fingerprint after introducing component overlays.
base/comps/cpio/cpio.comp.toml Adds cpio component file with overlays to remove rmt BR and stale %install cleanup.
base/comps/components.toml Removes inline star and cpio component entries (cpio moved to dedicated .comp.toml).
base/comps/components-publish-channels.toml Removes star from the publish channel component list.

Comment thread base/comps/cpio/cpio.comp.toml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants