{"id":45872375,"url":"https://github.com/techofourown/img-ourbox-woodbox","last_synced_at":"2026-04-01T17:13:55.912Z","repository":{"id":340418214,"uuid":"1165950257","full_name":"techofourown/img-ourbox-woodbox","owner":"techofourown","description":"Build and publish Ubuntu-based installer images for OurBox Woodbox (x86-64).","archived":false,"fork":false,"pushed_at":"2026-03-27T13:37:22.000Z","size":839,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-27T23:59:09.182Z","etag":null,"topics":["airgap","image-build","installer-media","ourbox","ubuntu","woodbox","x86-64"],"latest_commit_sha":null,"homepage":"https://techofourown.com","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/techofourown.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-24T18:07:33.000Z","updated_at":"2026-03-27T13:37:42.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/techofourown/img-ourbox-woodbox","commit_stats":null,"previous_names":["techofourown/img-ourbox-woodbox"],"tags_count":71,"template":false,"template_full_name":null,"purl":"pkg:github/techofourown/img-ourbox-woodbox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techofourown%2Fimg-ourbox-woodbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techofourown%2Fimg-ourbox-woodbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techofourown%2Fimg-ourbox-woodbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techofourown%2Fimg-ourbox-woodbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/techofourown","download_url":"https://codeload.github.com/techofourown/img-ourbox-woodbox/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techofourown%2Fimg-ourbox-woodbox/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31290538,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["airgap","image-build","installer-media","ourbox","ubuntu","woodbox","x86-64"],"created_at":"2026-02-27T10:46:21.870Z","updated_at":"2026-04-01T17:13:55.907Z","avatar_url":"https://github.com/techofourown.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# img-ourbox-woodbox\n\nBuild repository for **OurBox Woodbox** — a local-first x86-64 appliance running the OurBox\nsoftware platform. This repo produces the Woodbox OS payload and the Woodbox installer\nsubstrate consumed by the unified host-side installer.\n\n**Hardware**: x86-64 desktop-class PC, UEFI, NVMe system disk, SATA data disk\n**OS base**: Ubuntu Server LTS 24.04 (x86-64), autoinstall via cloud-init\n**Runtime**: offline single-node k3s, deployed from the selected substrate bundle\n\n## Identifiers\n\n- **Model ID**: `TOO-OBX-WBX` (Woodbox hardware class)\n- **Default SKU**: `TOO-OBX-WBX-BASE-JU3XK8`\n- **Build target**: `x86`\n\n## If You Want To Install A Woodbox\n\nDo not start from this repo.\n\nWoodbox installation now goes through the unified host-side installer:\n\n- repo: `https://github.com/techofourown/sw-ourbox-installer`\n- normal operator command:\n\n```bash\ncd sw-ourbox-installer\n./tools/prepare-installer-media.sh\n```\n\nThat flow:\n\n- chooses the Woodbox OS artifact on the trusted host\n- chooses one or more application catalogs on the trusted host\n- merges those catalogs into one effective catalog on the host\n- chooses the merged default app set, all apps, or a custom app subset from\n  that merged catalog on the trusted host\n- pulls the published Woodbox installer substrate artifact\n- composes mission media\n- flashes removable media\n- installs fully offline on the target\n\nThis repo is not the operator front door for artifact selection or USB\ncomposition anymore.\n\nThe helper at [tools/prepare-installer-media.sh](/techofourown/img-ourbox-woodbox/tools/prepare-installer-media.sh)\nnow delegates to `sw-ourbox-installer`; it does not maintain a separate\nWoodbox-only operator flow.\n\n## What This Repo Owns\n\nThis repo still owns the Woodbox-specific surfaces below the hardware seam:\n\n- Woodbox OS payload build and publish\n- Woodbox installer substrate build and publish\n- Woodbox target runtime install behavior\n- Woodbox storage, boot, and hardware-specific installation logic\n- Woodbox host-side media adapter surface used by `sw-ourbox-installer`\n\n## Operator runbook\n\nSee [`docs/OPS.md`](./docs/OPS.md) for the full operator runbook including:\n- Individual build steps\n- Registry operations (publish/pull)\n- Post-boot verification\n- Updating upstream platform inputs\n- Troubleshooting\n\n## Artifact model\n\nWoodbox now has a two-layer model:\n\n- this repo publishes target-owned artifacts\n- `sw-ourbox-installer` composes final mission media from those artifacts\n\nPublished artifacts from this repo:\n\n| Artifact | ORAS artifact type | Registry |\n|---|---|---|\n| OS payload (`.tar.gz`) | `application/vnd.techofourown.ourbox.woodbox.os-payload.v1` | `ghcr.io/techofourown/ourbox-woodbox-os` |\n| Installer substrate ISO (`.iso`) | `application/vnd.techofourown.ourbox.woodbox.installer.v1` | `ghcr.io/techofourown/ourbox-woodbox-installer` |\n\nOfficial channel tags: `x86-beta`, `x86-stable`, `x86-nightly`, `x86-exp-labs`,\n`x86-installer-beta`, `x86-installer-stable`, `x86-installer-nightly`,\n`x86-installer-exp-labs`\n\nImportant distinction:\n\n- the published installer ISO is a substrate artifact, not the supported standalone install path\n- the supported install path is host-composed mission media created by `sw-ourbox-installer`\n- mission media embeds the selected OS payload, a synthesized application\n  bundle derived from one or more selected catalogs, selected-app metadata, and\n  the mission manifest\n- the target then installs from those local mission bytes only\n\nSee [`docs/ARTIFACT_PROVENANCE.md`](./docs/ARTIFACT_PROVENANCE.md) for the full provenance model\nand official release policy.\n\n## Official build posture\n\nOfficial artifacts are produced by organization-controlled build infrastructure per\n[ADR-0008](https://github.com/techofourown/org-techofourown/blob/main/docs/decisions/ADR-0008-adopt-organization-controlled-build-infrastructure-for-heavy-artifacts.md).\n\n- Official candidate: push to `main` via `.github/workflows/official-candidate.yml` → publishes `x86-beta` / `x86-installer-beta`\n- Integration nightly: daily cron via `.github/workflows/integration-nightly.yml` → publishes `x86-nightly` / `x86-installer-nightly`\n- Stable promotion: GitHub Release `published` via `.github/workflows/official-promote-stable.yml`\n- Exp-labs promotion: GitHub Release `prereleased` via `.github/workflows/official-exp-labs.yml`\n- Heavy-build runners: `[self-hosted, official-heavy, x86-image]` (organization-controlled)\n\nOfficial Woodbox builds publish:\n\n- the OS payload artifact\n- the Woodbox installer substrate artifact used by host-side mission composition\n\nTerminology note:\n\n- the transport artifact is named `ourbox-substrate` in OCI and runtime surfaces\n- the user-facing meaning is \"application catalogs\" plus a selected app set\n\nCandidate builds resolve exact upstream refs from the approved\n`sw-ourbox-os/release/approved-upstream-inputs.json` snapshot pinned in\n`tools/approved-upstream-inputs.upstream.env`.\nScheduled nightly integration builds intentionally bypass that approved snapshot\nand resolve the latest upstream nightly/platform inputs at workflow time.\n\nThe offline-install contract now lives in the Woodbox substrate itself:\n\n- target package installation comes from substrate-local media, not Ubuntu mirrors\n- target netplan is rendered from hardware inventory, not the live installer's default route\n- target-side OS and `ourbox-substrate` browsing/pulling are removed from the supported path\n\n## Documentation\n\n| Document | Contents |\n|---|---|\n| [`sw-ourbox-installer`](https://github.com/techofourown/sw-ourbox-installer) | Unified host-side installer and mission-media composer |\n| [`sw-ourbox-os`](https://github.com/techofourown/sw-ourbox-os) | Upstream platform-contract and install-defaults producer |\n| [`docs/OPS.md`](./docs/OPS.md) | Operator runbook |\n| [`docs/ARTIFACT_PROVENANCE.md`](./docs/ARTIFACT_PROVENANCE.md) | Artifact provenance and release policy |\n| [`docs/reference/contracts.md`](./docs/reference/contracts.md) | Host contracts (release metadata, storage, installer) |\n| [`docs/reference/installer.md`](./docs/reference/installer.md) | Installer reference (defaults, UX flow, artifact contract) |\n| [`docs/reference/platform-contract.md`](./docs/reference/platform-contract.md) | Platform input consumption from sw-ourbox-os |\n| [`docs/decisions/`](./docs/decisions/) | Architectural Decision Records |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechofourown%2Fimg-ourbox-woodbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechofourown%2Fimg-ourbox-woodbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechofourown%2Fimg-ourbox-woodbox/lists"}