evidence · 6.0 KiB

README.md

Committed at docs/evidence/shell-features/desktop-launcher/README.md. This is what grounds the requirements that cite it.

Open raw source

Desktop-entry launcher, 2026-09-22

Source d53d863 (also in daily image source 3f397a6). The launcher now uses GLib desktop-entry discovery and launch semantics, with Pango/Cairo text and touch pages. It refreshes on every open; there is no background catalogue daemon or separate cache to rebuild. Omarchy’s discovery-based application library informed the design; no Omarchy code or desktop stack was imported.

90-second camera video, manifest, action script, console transcript. The physical panel was recorded with FFmpeg at 1920×1080, 30 fps, rotated 180 degrees for presentation. The actions were injected uinput touches; this does not prove finger accuracy. Native PNGs preserve readable layouts.

Observed on the physical board:

At first open, RSS was 15,748 KiB and proportional memory was 7,289 KiB (about 7.1 MiB). This is a single observation, not peak or latency evidence. The 327.1 MiB Sway-config dependency closure includes the already-installed compositor and libraries. The final transfer from the preceding trial was 55,720 bytes across five new store paths; it is not total image size.

Final deployment imported source-built store paths and restarted the shell with /nix/store/mrs3y5x82skma9xkz6s035ily6fs308r-k230-sway.conf. This capture uses a runtime systemd override, which survives service restart but not reboot. That recording remains runtime-deployment evidence; the subsequent image boot is recorded separately below.

Host verification: python3 tests/test_touch_menu.py (six tests), python3 tests/test_desktop_catalog.py (three tests, including two launch variants), and the narrow cross build passed. Catalogue fixtures exercise precedence, hiding, visibility, addition/removal, encoded labels, quoted arguments, %c, %k, %%, %f, %i, working directories, and the terminal bridge using real GLib 2.88.3. A launch handoff is not application-health proof.

User hands-on verification

After the desktop-aware launcher demo on 2026-09-22, the user reported: “i used my finger to tst it it’s fine”. This confirms user-observed finger usability of the launcher. It is separate from the automated camera recording, which remains labeled injected. The report does not claim the prescribed axis string, a battery-only boot, or every parent-shell system-control test.

Source-built image boot

The daily source image from 3f397a6, /nix/store/x0qz7ibmyb1bbmx1cpwgryxapkzisb0m-k230-sd-image.img, was written successfully (2,308,689,920 bytes). The image SHA-256 is 797d3fdf1e9901c6cf5d219a75c902e0cae12b951c9582514042535837d4b0a6. Write transcript retains a READBACK FAILED line because the already-running comparison was deliberately terminated after the user requested an end to routine full readbacks. It is neither evidence of a write failure nor a successful full comparison. No full-image equality is claimed.

Subsequent reset and Linux boot succeeded. 100-second physical boot video shows the shell terminal and persistent controls after startup. USB cables were attached; serial initiated the reset. This is not a battery-only boot. Post-boot diagnostics record the immutable system /nix/store/mp5llx58dcpnikfdwn455pyrygdvggbg-nixos-system-nixos-26.11.20260919.20b1ddd, active shell and seatd, empty systemd DropInPaths, and the expected mrs3y5x82skma9xkz6s035ily6fs308r-k230-sway.conf. The Nix store database contains the 576 requisite paths without a manual load, and Neofetch reports T-Head C908 (RISC-V64) (1).

The no-logo daily display path is in use: no /boot/logo.xrgb, no one-shot splash flag, and /dev/fb0 present. This does not prove logo-to-kernel handoff. The same boot exposed firewall.service failing with iptables: Failed to initialize nft: Protocol not supported; the launcher boot claim does not imply a fully healthy network firewall.

25-second launcher video after reboot, action script, and console record Apps, page two, Htop launch and reopening Apps with the same immutable configuration. Native images show Apps, desktop entries and Htop. These are injected touches on the physical board. No home-directory backup was restored: the fresh shell home had neither a .config directory nor user application entries before the demonstration. The private backup transfer was canceled and its partial board copy removed; it is not a shell dependency.

The newly flashed source U-Boot (including patch 0005) also passed the read-only UMS and USB host coexistence cycle: host RTL8152 before UMS, mass-storage enumeration, host RTL8152 after UMS, and return to Linux in 100.2 seconds. This cycle performed no write or full image readback. The separate BootROM recovery drills remain unverified.