Skip to content

feat(nokia-n9): run PocketJS Hero on Harmattan - #300

Draft
HalfSweet wants to merge 1 commit into
mainfrom
feat/nokia-n9-harmattan
Draft

feat(nokia-n9): run PocketJS Hero on Harmattan#300
HalfSweet wants to merge 1 commit into
mainfrom
feat/nokia-n9-harmattan

Conversation

@HalfSweet

Copy link
Copy Markdown
Collaborator

Summary

  • add the private Host ABI 9 nokia-n9-dev profile and a dedicated touch/live-viewport Hero wrapper
  • share the Qt4 guest runtime with E7 while adding MWindow lifecycle, normal landscape/portrait rotation, one-shot touch-hit facts, explicit interval-1 GLES2 presentation, context recovery, status metrics, and aligned captures
  • add the pinned Qt SDK 1.2.1 / QuickJS / Rust build environment, ARMEL Debian packaging, probe, SFTP deployment, device pairing, status, capture, and acceptance CLI
  • add quarter-turn shader/scissor transforms, four-corner touch/capture tests, software oracle support, and the Harmattan operator runbook

Validation

  • bun run test: 429 unit tests passed; all remaining test stages passed
  • bun run tape:check: existing Hero tape still matches all 180 committed hashes
  • cargo +stable test and the GLES1 feature run: 11/11 each
  • bun nokia-n9 setup --yes and doctor: clean archived SDK installation and pinned-image receipt passed
  • bun nokia-n9 build probe: real Harmattan qmake/GCC probe package built
  • bun nokia-n9 build app --manifest apps/nokia-n9-demo/pocket.json: complete QuickJS/Rust/MWindow/GLES2 ARM package built
  • final ELF: ARM EABI5, VFP-register argument ABI, /lib/ld-linux.so.3, allowed Qt/MeeGo Touch/EGL/GLES2/C dependencies
  • software oracle: deterministic, nonblank 180-frame runs at both 854×480 and 480×854

Hardware validation pending

The connected N9 still enumerates in USB Storage mode. bun nokia-n9 doctor --device rejects that state and asks for SDK Connectivity mode, so this draft does not claim device installation, touch/edge-swipe behavior, rotation/resume stability, device captures, or the 600-frame 60 Hz gate.

After switching the phone to SDK mode, follow docs/NOKIA_N9.md to run the probe, deploy the Hero, capture three aligned byte-identical frames in each orientation, complete the 20-rotation/resume checklist, and run bun nokia-n9 accept.

ABI note

The Harmattan SDK calls the Debian package architecture armel, but its Qt, MeeGo Touch, and CRT objects declare Tag_ABI_VFP_args: VFP registers. The Rust and QuickJS targets therefore use the observed hard-float calling convention; a softfp build would not be ABI-compatible with the SDK libraries.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant