Commit0e00a839Recorded27 Jul 2026Repositorycore-channel
Publish verified Binaryen channel package
Changed
README.md | 32 +++++++++++++++++++++-----------
channel.catalogue.sgl | 2 ++
objects/014baf016eec17892f30a30847b070ffb09e397182d2ef50eda2ceb3fded2a58.sgl | 1 +
package.sgl | 7 +++++++
snapshot.sgl | 3 +++
src/core/packages/wasm.sgl | 15 +++++++++++++++
6 files changed, 49 insertions(+), 11 deletions(-)Diff
README.mdmodified
@@ -1,10 +1,11 @@
1
# core-channel 2
−3
`core-channel` is the authoring repository behind Sigil's `core/` package−4
scope. A channel is a versioned directory of recipes plus the pinned build−5
inputs needed to realize them. The repository contains recipes and manifests;−6
generated toolchains, source archives, build output, and the seed tarball are−7
deliberately not committed.+3
`core-channel` is the ordinary Sigil library repository behind the authenticated+4
`core/` environment-package scope. Reviewed package definitions live under+5
`src/` and are imported like any other Sigil modules. The signed snapshot and+6
catalogue authenticate that source tree and its exported canonical package+7
objects. Generated toolchains, source archives, build output, and the seed+8
tarball are deliberately not committed. 9
10
## Clone, bootstrap, enter 11
@@ -20,15 +21,24 @@ verifies their SHA-256 hashes before installation, and refuses altered or
21
unexpected content. It requires `sh`, `sha256sum`, `tar`, and either `curl` or 22
`wget` on the host. 23
−23
Recipes are published under the `core/` scope by filename: for example,−24
`recipes/hello.sgl` resolves as `core/hello`. An environment names exact recipe−25
versions; `sigil env` resolves the recipe closure, realizes missing outputs,−26
and builds a shell PATH from the verified results. Recipe changes and input−27
hash changes are reviewed as source changes in this repository.+24
Authenticated package values are published under the `core/` scope by the+25
catalogue. For example, `(core packages wasm)` defines Binaryen 112 and the+26
catalogue exports it as `core/binaryen`. `sigil project lock` evaluates only+27
the snapshot-pinned `src/` closure, verifies the exported package identity,+28
realizes missing outputs, and seals those results into referenced locks.+29
+30
The older `recipes/` directory remains for the original external-build channel+31
prototype. New authenticated package definitions use normal modules under+32
`src/`; do not duplicate them in `recipes/`. 33
34
## Repository layout 35
−31
- `recipes/`: reviewed package recipes.+36
- `package.sgl`: ordinary Sigil library metadata.+37
- `src/`: reviewed authenticated package-definition modules.+38
- `objects/`: canonical package values named by their SHA-256 identity.+39
- `snapshot.sgl`: signed source/toolchain snapshot.+40
- `channel.catalogue.sgl`: signed exported binding-to-package map.+41
- `recipes/`: legacy external-build prototype recipes. 42
- `seed/MANIFEST`: pinned downloadable seed artifact. 43
- `seed/MANIFEST.sources` and `seed/scripts/`: pinned seed sources and the 44
reproducible seed build.channel.catalogue.sgladded
@@ -0,0 +1,2 @@
+1
(catalogue schema: 1 snapshot: "core-stable@1:sha256:07e599ae6707becf8fc6fbd7606f1346b996ffd80d929de6072aaffdffe55e8f" channel-source: "sha256:5d279c32a73e576a29d1ffb5aa354fe6ad983b2e1c23e20d22f3621a7f51a807" content-hash: "sha256:da0c0785061f3ae5698d91931b8263e83e8b5905f4d51c33f00005cdec18596b" signature-algorithm: "sha256-keyed-test-v1" key-id: "sigil-env-snapshot-test-key-2026" signature: "sha256:639a5d45e6851278a9f16d468f9f5acb99e51febf3589cce3458907bb60c10d7")+2
(binding name: "core/binaryen" package: "sha256:014baf016eec17892f30a30847b070ffb09e397182d2ef50eda2ceb3fded2a58")objects/014baf016eec17892f30a30847b070ffb09e397182d2ef50eda2ceb3fded2a58.sgladded
@@ -0,0 +1 @@
+1
(package-v1 name: "binaryen" version: "112" source: (source location: "https://github.com/WebAssembly/binaryen/releases/download/version_112/binaryen-version_112-x86_64-linux.tar.gz" sha256: "25a94f8129a532b4d84b6fa305ae630bcbd379d56416c895b3daa48d5fb2523e") buildenv: "894ca74bdb03c25d79f00ce915bbe25c56eba192334963c69e1846e6c84526cb" dependencies: () phases: ((phase kind: install-tree args: () patches: ())) divergences: ())package.sgladded
@@ -0,0 +1,7 @@
+1
(package+2
name: "core-channel"+3
sigil: "^0.17"+4
description: "Authenticated core package definitions for Sigil environments"+5
url: "https://codeberg.org/sigil/core-channel"+6
license: "BSD-3-Clause"+7
authors: (list "David Wilson <[email protected]>"))snapshot.sgladded
@@ -0,0 +1,3 @@
+1
(snapshot schema: 1 id: "core-stable" sequence: 1 content-hash: "sha256:07e599ae6707becf8fc6fbd7606f1346b996ffd80d929de6072aaffdffe55e8f" signature-algorithm: "sha256-keyed-test-v1" key-id: "sigil-env-snapshot-test-key-2026" signature: "sha256:3b96a61adcebfde9c9cd82ac33474b486dd6df3f9fbb8cda9bf4fd2484022d27")+2
(toolchain id: "toolchain/zig" version: "0.16.0" recipe: "sha256:5bc02f4c7abc6055b1f5fc37c57c4b063c18f9e3431ba2cab0cc9f30f313e33b" output: "sha256:70e49664a74374b48b51e6f3fdfbf437f6395d42509050588bd49abe52ba3d00")+3
(pkg id: "core/packages/wasm" version: "0.1.0" recipe: "sha256:5d279c32a73e576a29d1ffb5aa354fe6ad983b2e1c23e20d22f3621a7f51a807")src/core/packages/wasm.sgladded
@@ -0,0 +1,15 @@
+1
(define-library (core packages wasm)+2
(import (sigil core)+3
(sigil env package)+4
(sigil build external))+5
(export binaryen)+6
(begin+7
(define binaryen+8
(package+9
name: "binaryen"+10
version: "112"+11
source: (external-source+12
location: "https://github.com/WebAssembly/binaryen/releases/download/version_112/binaryen-version_112-x86_64-linux.tar.gz"+13
sha256: "25a94f8129a532b4d84b6fa305ae630bcbd379d56416c895b3daa48d5fb2523e")+14
buildenv: "894ca74bdb03c25d79f00ce915bbe25c56eba192334963c69e1846e6c84526cb"+15
phases: (list (external-phase kind: 'install-tree))))))