fleet/ohm: scaffold manifest for linux-pinetab2-danctnix-besser (#5 partial) #18

Merged
marfrit merged 1 commits from claude-noether/kernel-agent:migrate-pinetab2-pkgbuild into main 2026-05-16 16:43:42 +00:00
Showing only changes of commit 2d2b9ee8ba - Show all commits
+124
View File
@@ -0,0 +1,124 @@
# kernel-agent manifest for ohm (PineTab2 / Rockchip RK3566 + BES2600 SDIO WiFi/BT)
#
# Status: scaffolding from 2026-05-16. Patches/scopes are mirrored;
# the build pipeline (cumulative-patch generation, makepkg invocation,
# sign+publish) still relies on the hand-managed flow in
# boltzmann:~/src/besser/marfrit-besser/danctnix-besser-pkgbuild/kernel/.
# Once ka-promote / ka-build land, switch this manifest to authoritative
# and retire the boltzmann-side checkouts (canonical + the orphan at
# ~/src/besser/danctnix-besser-pkgbuild/ that the fourier-campaign
# sibling agent accidentally created).
#
# See kernel-agent issue #5 for the full migration plan.
host: ohm
arch: arm64
soc: rockchip/rk3566
board: pinetab2
distro: archlinux-arm # DanctNIX PineTab2 variant on Arch Linux ARM aarch64
baseline:
tree: DanctNIX/linux-pinetab2
url: https://codeberg.org/DanctNIX/linux-pinetab2
ref: v7.0-danctnix1 # _srcname=linux-pinetab2 _srctag=v${pkgver%.*}-${pkgver##*.}
upstream_compat: linux-7.0 # DanctNIX rebases off mainline + per-tablet delta
# Scope-tagged patch includes. Resolves to patches/<scope>/<file>.patch.
#
# Series-ordering note: the current cumulative-patch generation order on
# boltzmann is A, B, C v3, F, G, D, E, C2, c5.x, c6.x, c7, H — explicitly
# NOT alphabetical. ka-promote MUST honor an apply_order field when
# concatenating series into the build's per-job cumulative patch. The
# legend mapping series-letter → series-name lives in the current
# danctnix-besser-pkgbuild changelog on boltzmann; promote to this
# manifest once auto-generation is wired.
#
# DanctNIX siblings (-danctnix suffix) are selected here because ohm
# runs on the DanctNIX kernel base; the non-suffixed variants exist for
# vanilla mainline consumers that ohm doesn't currently have.
includes:
# Default-on series (uncontroversial fixes that ohm already runs):
- driver/bes2600/staging-prep-series-danctnix/
- driver/bes2600/pm-state-resync-danctnix/
- driver/bes2600/pm-timeout-silence-danctnix/
- driver/bes2600/pm-wake-consume-state-danctnix/
- driver/bes2600/pm-gate-on-handshake/
- driver/bes2600/pm-detect-firmware-unsupported-danctnix/
- driver/bes2600/scan-defer-backoff-tune-danctnix/
- driver/bes2600/scan-defer-on-reject-danctnix/
- driver/bes2600/lmac-recover-via-mmc-hw-reset-danctnix/
- driver/bes2600/tx-sdio-dma-oob-danctnix/
- driver/bes2600/factory-series/
- driver/bes2600/factory-thread-dev/
- driver/bes2600/factory-drop-kernel-write-danctnix/
- driver/bes2600/drop-dpd-file-paths-danctnix/
- driver/bes2600/drop-orphan-file-io-danctnix/
- driver/bes2600/remove-chardev-user-interface/
- driver/bes2600/enable-testmode/
# Explicitly NOT included (decision logged):
# - debian-copyright-fsf-address: Debian packaging metadata, not kernel
# - bare (non-danctnix) variants of the above: ohm runs DanctNIX base
config:
source: hand-managed config file in boltzmann:~/src/besser/marfrit-besser/danctnix-besser-pkgbuild/kernel/config
strategy: snapshot, fold to baseline, accept-new with rationale on diff
TODO: migrate config into kernel-agent flow once kconfig-by-manifest lands
package:
name: linux-pinetab2-danctnix-besser
versioning: "${baseline_ref}.kafr${pkgrel}" # e.g. v7.0-danctnix1.kafr1
install_mode: alongside # coexists with linux-pinetab2 if user wants A/B
conflicts: []
provides: [linux-pinetab2] # drop-in replacement; pacman can satisfy linux-pinetab2 deps
kernel_suffix: -danctnix-besser # vmlinuz-linux-pinetab2-danctnix-besser
bootloader: extlinux # PineTab2 standard
# PKGBUILD currently at:
# boltzmann:~/src/besser/marfrit-besser/danctnix-besser-pkgbuild/kernel/PKGBUILD
# TARGET location (per issue #5):
# marfrit/marfrit-packages/arch/linux-pinetab2-danctnix-besser/PKGBUILD
# PENDING the kernel-agent template-rendering pipeline (b2sums regen,
# pkgrel bump, cumulative-patch generation from manifest scope).
template_at: TBD-marfrit-packages-arch-linux-pinetab2-danctnix-besser
replaces_dkms: bes2600-dkms # once cumulative series in this manifest is enough
verify:
bar1_ssh_heartbeat: required
bar2_pkg_version: required
bar3_module_loaded:
- bes2600 module loads
- wlan0 + bt0 (BT/UART) present after boot
- sdio_force_uhs=0 not needed (DMA-OOB-read fix in tx-sdio-dma-oob series)
bar4_per_patch_probe: opt-in
bar5_burn_in: opt-in
- WiFi: 24h iperf3 to LAN host without rxhang
- PM: lid-close → wake cycles × 100 without bes2600 confirm-loss
build_host:
primary: boltzmann # native aarch64 with ohm's identical .config
fallback: fermi # hertz LXD, ALARM aarch64
# No distcc per feedback_kernel_agent_no_distcc.md.
backup:
pre_install: hertz:/sparfuxdata/kernel-agent-backups/ohm/${replaced_version}/
# ─────────────────────────────────────────────────────────────────────
# OPEN — kernel-agent CLI work blocking full migration:
#
# 1. ka-promote: read includes[] above + apply_order field (to be added),
# concatenate referenced series into a single .patch in the build dir.
# Validate it applies cleanly on baseline.ref. Compute b2sum for
# template substitution.
#
# 2. PKGBUILD template renderer: stamp pkgrel, ${_cumulative_b2sum},
# ${_srctag} from manifest into a PKGBUILD draft at the
# template_at location. Sign + publish to packages.reauktion.de.
#
# 3. Orphan retirement: surface ~/src/besser/danctnix-besser-pkgbuild/
# (NO remote, ~/src/besser/marfrit-besser/... is canonical) to
# Markus / fourier campaign for working-state migration BEFORE
# deleting. See besser issue #17 for the regression that the
# orphan caused. After the kernel-agent flow is authoritative,
# delete both checkouts.
# ─────────────────────────────────────────────────────────────────────