8.0 KiB
Changelog
All notable changes to OreBolt OS are documented in this file. Format roughly follows Keep-a-Changelog; dates are YYYY-MM-DD.
[v1.4] -- 2026-07-13
Rebrand: "Project Orebolt" -> "OreBolt OS"
The project has been rebranded from "Project Orebolt" to OreBolt OS. All human-facing text (documentation, source comments, init-script descriptions, banner messages, PDF reports, license docs) now uses the new name. Technical identifiers are intentionally preserved as-is to avoid breaking the build pipeline and to maintain filesystem compatibility:
liborebolt.a-- static archive name (lowercase, code-level)Makefile.orebolt-v1.4-- sub-makefile filename (lowercase, path)modules/orebolt-*/-- module directory names (lowercase, paths)OREBOLT_VERSION,OREBOLT_TARGET_SOC-- environment variablesorebolt-broker.pid-- PID file name
This follows standard rebrand practice (cf. Firefox retaining mozilla
identifiers for years after the Firefox rebrand): user-visible names
change immediately; code-level identifiers migrate only when there is a
specific reason to do so.
The v1.4 release is a build-and-licensing cleanup pass driven by the
research file h2-and-related-devices.text. v1.3 shipped an overlay-only
drop with an internally inconsistent SHA256SUMS, the wrong target SoC, and
a headers-sourcing workflow that did not match the actual build path. v1.4
corrects all three and adds the AGPL-licensed bitchat mesh module.
Fixed
- Target SoC corrected: T31 -> X1000E. The H2 and its rebadged
siblings (Surfans F20, Aigo Eros Q, Phinistec Z6, Agptek H3) all use
the Ingenic X1000E (JZ4760 family), not the T31/X2000. Updated the
master
Makefileheader comment,PREREQUISITES.md§1, andARCHITECTURE.md§1. Build flags unchanged (-march=mips32r2 -mhard-floatis correct for both SoCs, but the register-level headers differ). - Module count reconciled to 16. v1.3 master Makefile line 55
advertised "(16 modules)" but SHA256SUMS only listed 13 module
.cfiles and PREREQUISITES §5.1 listed 16. v1.4 ships all 16: vault, nettap, deploy, studio, probe, vterm, radar, ducky, extract, noise, reset, emulate, emulator_input_mapper, rfid, wifi, glitch, pwdb (restored), plus the new bitchat module (NEW). - macOS and Windows payload folders now exist. v1.3's
Provision.txtitself flagged that "macos/63-100 and windows/101-150 sections were not generated in the source installer." v1.4'sinject_payloads.shregenerates the canonical 50+50+50 layout underoverlay/data/payloads/{linux,macos,windows}/. Existing v1.3 flat.macrofiles are migrated tooverlay/data/payloads/legacy/on first run. - SHA256SUMS now matches what ships. v1.3's SHA256SUMS listed 38 files; only 3 of them were in the zip. v1.4 SHA256SUMS lists every file in the tree and the build verifies them.
- Init scripts restored.
S98emulator-input,S99broker, andbt_input_daemon.share present. v1.3's SHA256SUMS listedbt_input_daemon.shbut the zip did not ship it; the other two were referenced by PREREQUISITES §5.1 but absent from both zip and SHA256SUMS. - Headers/source stubs restored. All files referenced by v1.3
SHA256SUMS but missing from the zip are present in v1.4:
h2_ui.h,log_manager.h,lv_conf.h.dist,main.c,panic_purge_api.h,build.sh,inject_payloads.sh,Makefile.h2-core-v6.0(renamed toMakefile.h2-core-v6.1in v1.4),Makefile.orebolt-v1.3(renamed toMakefile.orebolt-v1.4), and all module.cfiles.
Changed
- Headers source: Rockbox -> FiiO M3K GPL kernel tree. v1.3
PREREQUISITES §3 asked operators to clone Rockbox as a header
reference and hand-write register definitions (because Rockbox is
GPL and OreBolt OS was proprietary). v1.4 vendors the FiiO M3K GPL
kernel tree (Linux 3.10.14, Ingenic BSP) as the canonical headers
source -- same X1000E SoC, GPL-clean, ships the exact uapi headers,
no reverse engineering. See the new
HEADERS.mdfor the full workflow and the XBurst BSP fallback. - Rockbox demoted to optional bare-metal reference. v1.3 listed Rockbox as the primary header reference; v1.4 explicitly scopes it to a future bare-metal "OreBolt OS Native" port and notes that the current Linux userspace build path does not use Rockbox at all.
- Sub-Makefile names bumped to reflect the SoC correction.
Makefile.h2-core-v6.0->Makefile.h2-core-v6.1,Makefile.orebolt-v1.3->Makefile.orebolt-v1.4. MasterMakefilereferences updated. - HARDWARE_GPIO default flipped to 0. v1.3 left the default
unspecified; v1.4 explicitly defaults to 0 (safe stubs) so host
development builds do not accidentally trigger real GPIO operations.
Set
HARDWARE_GPIO=1only on real H2 hardware. build.shPhase 0 now probes forKERNEL_HEADERS. Exits with a clear error if the FiiO M3K tree is not at the expected path.build.shPhase 7 now verifies the bitchat AGPL marker. Runsstrings overlay/apps/bitchat.mod | grep -q AGPL_BITCHATand fails the build if the marker is missing (i.e., bitchat was compiled without-DAGPL_BITCHAT, which would mean it was compiled without its AGPL license obligations enforced).- LVGL clone fallback baked into Phase 5. v1.3 PREREQUISITES §8
documented an offline LVGL-clone fallback in the troubleshooting
section; v1.4
build.shPhase 5 implements it inline.
Added
- bitchat mesh module (
modules/orebolt-bitchat/bitchat.c,src/modules/mod_bitchat_mesh.c). Licensed under AGPL-3.0-only. SeeLICENSE.mdfor the multi-tier licensing strategy and the AGPL boundary analysis. The bitchat module is the only OreBolt OS component that runs as a networked service; AGPL v3 §13 closes the SaaS loophole for mesh operators who fork and run modified bitchat nodes. HEADERS.md-- dedicated kernel-headers sourcing strategy doc. Replaces v1.3 PREREQUISITES §3.LICENSE.md-- multi-tier licensing strategy. Documents the AGPL boundary, operator obligations under AGPL v3 §13(d), and the practical compliance checklist for deploying a modified H2 with bitchat.licenses/directory -- AGPL-3.0.txt, GPL-2.0.txt, MIT.txt stub files. Replace with full canonical texts before shipping (download URLs in each file).make headers-checktarget -- verifies the kernel headers tree is installed and exposes the expected JZ4760 SoC header path before the build starts.BITCHAT_MSG_LICENSEwire message type -- every bitchat mesh HELLO advertises the source-code Written Offer URL to peers, so operators downstream of a modified node are automatically informed of their AGPL v3 §13 source rights.
Removed
- v1.3 PREREQUISITES §3 "Rockbox Headers for Ingenic T31" workflow --
replaced by
HEADERS.md. The §3 section in v1.4 PREREQUISITES now points operators toHEADERS.mdinstead of reproducing the (wrong) Rockbox-mining workflow.
Known limitations
- All module
.cfiles (exceptmod_bitchat_mesh.c) are currently build-linkable stubs with the correct SPDX headers and module surface (init/deinit). Real implementation must be restored from the upstream source set tracked in SHA256SUMS. Stubs log their init/deinit calls so the launcher UI works end-to-end. licenses/AGPL-3.0.txtis a stub referencing the canonical URL. Runcurl -o licenses/AGPL-3.0.txt https://www.gnu.org/licenses/agpl-3.0.txtbefore shipping.BITCHAT_SOURCE_URLinmod_bitchat_mesh.cis a placeholder (https://example.invalid/orebolt-bitchat-src). Replace with the real Written Offer URL before any bitchat deployment that other operators will interact with over the mesh.
[v1.3] -- 2026-07-13 (pre-cleanup)
Initial public drop. Shipped the overlay tree (payloads, init scripts,
vault data) but omitted the buildable source set. Targeted the wrong
SoC (T31 instead of X1000E). Listed Rockbox as the primary header
reference despite being a bare-metal OS unsuitable for the Linux
userspace build path. See CHANGELOG.md v1.4 entry for the full
cleanup.