NiceOS RPM dist-git source for cstream
Find a file
NiceOS DistGit Import Bot 3bf14aba80 Sync cstream from NiceOS Core snapshot
EVR: 3.2.1-1
Lock-SHA256: 2022e530d40aad084cc25cbaca9655f4f12afd13f751a25a964f554c147b0331
Branch: niceos-5.2
2026-05-01 16:12:39 +03:00
METADATA Sync cstream from NiceOS Core snapshot 2026-04-27 21:45:36 +03:00
SBOM Sync cstream from NiceOS Core snapshot 2026-04-27 21:45:36 +03:00
SOURCES Sync cstream from NiceOS Core snapshot 2026-04-27 21:45:36 +03:00
SPECS Sync cstream from NiceOS Core snapshot 2026-04-27 21:45:36 +03:00
.gitignore Sync cstream from NiceOS Core snapshot 2026-04-27 21:45:36 +03:00
OWNERS Sync cstream from NiceOS Core snapshot 2026-04-27 21:45:36 +03:00
README.md Sync cstream from NiceOS Core snapshot 2026-05-01 16:12:39 +03:00
README_RU.md Sync cstream from NiceOS Core snapshot 2026-05-01 16:12:39 +03:00

cstream

Overview

cstream is a general-purpose stream-handling tool from upstream, similar in spirit to dd. It is used in command-line pipelines to move, limit, generate, sink, duplicate, or report on data streams. Upstream describes it as a direct data stream tool with bandwidth limiting, FIFO support, audio-related modes, duplication support, and extended reporting. (cons.org)

In a Linux distribution, a package like this exists to provide a small standalone utility for shell pipelines, tests, data transfer experiments, and administrative tasks where a simple stream filter is useful. NiceOS maintainers should verify the exact packaging role in the repository if local patches or build options are added.

Purpose and typical use cases

Typical use cases include:

  • copying or transforming data in shell pipelines
  • limiting throughput for tests or controlled transfers
  • generating test input or discarding output in scripted workflows
  • working with FIFOs and other special file types
  • reporting how much data has been transferred during long-running operations
  • wrapping simple stream operations in repeatable automation for admins or CI jobs

Typical users include:

  • system administrators who need a small stream utility for maintenance or troubleshooting
  • developers who test pipelines, devices, or command-line data flow
  • CI/CD maintainers who need predictable scripted data movement
  • security engineers who may use it for controlled data handling in lab environments

Upstream project

Upstream is maintained by Martin Cracauer and the official project page is the cstream page on cons.org. Upstream describes the tool as a dd(1)-style replacement and provides a manual page and short usage notes. (cons.org)

NiceOS maintainers should use upstream documentation as the primary reference when checking behavior changes, option semantics, or packaging patches.

Dist-git repository contents

This dist-git repository is organized in the usual NiceOS RPM layout:

  • SPECS/ — RPM spec files and packaging logic
  • SOURCES/ — source-control metadata and manifests used by the RPM build system
  • METADATA/ — repository metadata for the package branch
  • SBOM/ — software bill of materials material, when present in the package workflow

Large upstream source archives are intentionally not stored in this Git repository. Instead, source integrity is tracked through manifest files in SOURCES/. That keeps the repository small and makes the build inputs easier to review.

Source storage and integrity policy

The repository should contain the metadata needed to reconstruct the source set, not the full upstream archive contents.

Before updating the package, NiceOS maintainers should verify that:

  • the SOURCES/ manifests still match the intended upstream source set
  • the upstream tarball or equivalent source material has not changed unexpectedly
  • any locally maintained patches still apply cleanly
  • no generated files were accidentally committed instead of source or metadata

Do not rely on any single manifest entry without checking the full build inputs and the spec file together.

NiceOS maintenance notes

Before accepting an update, check the following:

  • whether upstream behavior or option handling changed in a way that affects packaging or tests
  • whether the spec file still builds cleanly without hidden local assumptions
  • whether any patch series needs refresh or removal
  • whether documentation, license files, or install paths changed upstream
  • whether any generated metadata in SOURCES/, METADATA/, or SBOM/ needs regeneration
  • whether the package still installs only the intended binaries, man pages, and documentation

Risks to consider:

  • stream-processing tools are often used in scripts, so small behavior changes can break automation
  • command-line option changes can be user-visible even when the code change is minor
  • updates may alter build dependencies, manual pages, or installed file locations

Build and verification checklist

For RPM maintenance, a reasonable checklist is:

  • review the upstream release notes or change log before updating
  • compare the new upstream source against the current packaging patches
  • verify that the spec file still references the correct source metadata in SOURCES/
  • rebuild the SRPM and binary RPMs in the target NiceOS environment
  • run the package test suite if one exists
  • run a basic smoke test of the installed binary, for example checking help output and a simple stream copy path
  • confirm that installed files match the package manifest and that no unexpected files are added
  • check that the license files and documentation are installed as expected
  • inspect the generated RPM for missing or duplicate provides, files, or changelog issues

If the package has no automated tests, maintainers should document the manual verification they performed.

References

Russian documentation

See README_RU.md for the Russian version of this document.

Dist-git repository notes

  • Package repository: rpms/cstream
  • NiceOS branch: niceos-5.2
  • This README is intentionally stable and does not include EVR, source archive checksums or lock hashes.