install: 'w' at boot now handles fresh blank SSDs
`auto_install_to_hd` only ever scanned for existing partitions on each
candidate disk (nvme0n1, mmcblk0, sd*) — for a totally blank SSD that
has no partition table at all, every /dev/<disk>pN access(2) failed and
the disk was silently skipped. Boot-time `w` then aborted with "no
removable install source found" even though the user just plugged in
a destination disk to install onto.
Added a blank-disk pre-pass: if the parent disk node exists but it has
ZERO partitions, dd-zero the first 16 MiB and run sfdisk to create a
single GPT ESP (type C12A7328-…). Then fall through to the existing
per-partition install loop, which now sees p1 and uses the existing
rescue-mkfs path on pass 1 to format + populate it.
Mirrors the JS-side blank-disk handling that was just added in
flash_thread_fn (in the previous commit) — both code paths now do the
same partitioning so devices-view `w` (after notepat boots) and
boot-time `w` (during the 1-3s startup fade) work on the same disks.
os.mjs: also extended devices-view `w` to derive the parent disk path
from a partition target, so `w` can wipe + reinstall on already-
formatted disks too (refuses on the boot device).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>