Add bmake ports for a minimal Wayland desktop

This commit is contained in:
Michal S.
2026-08-06 10:26:36 +01:00
parent 06c4008c68
commit d7bce4403e
89 changed files with 2143 additions and 29 deletions
+22 -14
View File
@@ -6,13 +6,21 @@ machinery lives under `ports/Mk`.
Each port lives below `ports/category/name` and contains a `Makefile`,
`distinfo`, and `pkg-plist`, plus optional patches and service definitions
under `files`. A MOUSE release pins one tested commit from this repository,
while installed systems may move to later compatible ports revisions without
under `files`. Build-only and runtime dependencies remain distinct, so tools
such as GNU make do not become installed dependencies of the software they
compile. A MOUSE release pins one tested commit from this repository, while
installed systems may move to later compatible ports revisions without
replacing the base system.
The adversarial and demonstration recipes used by the base-system acceptance
suite are deliberately not part of this collection. They live in
`mouse-src/tests/fixtures/ports`.
The collection is driven by BSD make (`bmake`) at every framework and recursive
dependency boundary. A recipe invokes GNU make only when its upstream build
requires it. Rust recipes use checksum-locked crate archives and an offline
Cargo source replacement, so Cargo never becomes an undeclared fetcher during
the build.
Packing lists name individual payload files. A list may use `@tree path` for a
large data-only directory; the framework verifies that tree in staging and
expands it into concrete file ownership records in the resulting package.
The shared framework uses the base system's ChimeraUtils `fetch` and `sha256`
commands. TLS trust comes from MOUSE's pinned CA bundle; the ports tree does
@@ -21,18 +29,18 @@ not carry private download or cryptographic implementations.
Run the collection checks with:
```sh
make check
bmake check
```
On MOUSE, a port's public interface is:
```sh
make fetch
make checksum
make build
make stage
make package
make install
make deinstall
make clean
bmake fetch
bmake checksum
bmake build
bmake stage
bmake package
bmake install
bmake deinstall
bmake clean
```