Skip to content

getconf: report Kandelo's real POSIX configuration - #4

Merged
brandonpayton merged 1 commit into
mainfrom
formula/getconf-posix-config
Jul 19, 2026
Merged

getconf: report Kandelo's real POSIX configuration#4
brandonpayton merged 1 commit into
mainfrom
formula/getconf-posix-config

Conversation

@brandonpayton

@brandonpayton brandonpayton commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR adds a Homebrew source recipe for getconf, the standard POSIX
command that reports system limits and supported programming environments.

Kandelo's getconf reads the running system through sysconf, pathconf,
and confstr. It does not print a hard-coded table of answers.

This is a source-only PR. It does not add a bottle do block, publish a
GitHub package, or change existing bottle bytes.

What changes

  • Adds Formula/getconf.rb, based on pinned OpenBSD getconf source and its
    matching manual page.
  • Builds a wasm32 program with Kandelo's SDK and checks the result for the
    current ABI, forbidden fork support, legacy Asyncify state, and leaked host
    paths.
  • Adds the small OpenBSD compatibility boundary needed for __dead,
    pledge, and unveil. Those wrappers do not provide configuration values;
    all reported values still come from Kandelo's real libc/platform APIs.
  • Extends the shared Chromium Formula runner so tests can expect a specific
    nonzero exit code and can compare stdout/stderr in callback order.
  • Tests normal values, pathname limits, failure messages, POSIX V7 compiler
    flags, and a compile/link/run smoke test in both Node.js and Chromium.
  • Documents getconf in the tap's Formula inventory.

Current revision

The reviewed commit was refreshed onto the accepted tap main that contains
the bzip2 and zlib wasm32 bottles.

  • PR head: db597482207f716b4994757616dba62fc7265f5f
  • Base commit: b267f6d596dd5f8f0880a29e307e2d9310384835
  • The original author, author date, commit message, stable patch, and
    Formula/getconf.rb blob were preserved.
  • The diff is limited to six reviewed files: the new Formula, four shared
    Formula-support/test files, and this repository's README.

Validation

Both refreshed-head trust checks passed:

Local checks against the refreshed tree passed:

  • OpenBSD source and manual downloads matched their pinned SHA-256 values.
  • Ruby syntax checks passed.
  • Formula-support Ruby tests: 53 runs, 412 assertions, 0 failures.
  • Formula-support Node/TypeScript tests: 17 passed.
  • brew style Formula/getconf.rb: no offenses.
  • Tap trust, runtime-closure, source-closure, and semantic sidecar validation
    passed with the existing bzip2 and zlib bottle metadata.
  • git diff --check passed.

The fresh exact-head dry run also passed:

  • Dry run 29703087484
  • Inputs: formulae=getconf, arches=wasm32,
    tap_ref=db597482207f716b4994757616dba62fc7265f5f, and
    kandelo_ref=main.
  • The source build, Node.js and Chromium Formula behavior tests, strict data
    handoff, exact-bottle force-pour/test, sidecar generation, and source
    rechecks passed.
  • This getconf matrix entry intentionally produced no dependency-bearing VFS
    acceptance evidence. That acceptance gate belongs to
    file-formula/wasm32, not this Formula.
  • Package upload, version-index publication, and tap finalization were skipped
    as required for a dry run.

After merge

Bottle publication is a separate reviewed write workflow after this source PR
merges. Because this PR changes the shared Formula-support tree, future
rebuilds use the new recorded source closure and must follow the normal
immutable bottle-identity rules. Existing published bottle bytes are not
changed by this PR.

@brandonpayton
brandonpayton force-pushed the formula/getconf-posix-config branch from 71114bd to 61a2009 Compare July 17, 2026 20:31
@brandonpayton

Copy link
Copy Markdown
Contributor Author

Exact-head update:

  • Rebased the reviewed commit onto tap main 0088022e5d82151c2fb90918eb0d64f7e1765b70 so the candidate includes the current protected caller pins.
  • New exact head: 61a2009230e8d81f04a847e4e879f716cb263b92.
  • Stable patch ID remains exactly f26b59ddcc02c0fec64b10b57b49b92993b64815; Brandon's authorship, Formula behavior, and review scope are unchanged.
  • The superseded candidate run was canceled. Current-ABI credential-free source/Node/Chromium run: https://github.com/Kandelo-dev/homebrew-tap-core/actions/runs/29611504965

@brandonpayton
brandonpayton force-pushed the formula/getconf-posix-config branch from 016c274 to db59748 Compare July 19, 2026 20:43
@brandonpayton
brandonpayton merged commit 56205b8 into main Jul 19, 2026
2 checks passed
@brandonpayton
brandonpayton deleted the formula/getconf-posix-config branch July 19, 2026 21:07
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.

1 participant