Update docs for FydeOS install on eMMC, stale Flex UEFI entry removed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
172f5c9f75
commit
c7231628b8
+55
-18
@@ -1,11 +1,14 @@
|
||||
# ChromeOS Flex on hp-chell's internal eMMC
|
||||
# ChromeOS (Flex / FydeOS) on hp-chell's internal eMMC
|
||||
|
||||
**Currently installed: FydeOS** (`iris` build, 2026-09-27). It replaced
|
||||
ChromeOS Flex; `install-flex-emmc.sh` handles both images.
|
||||
|
||||
hp-chell (HP Chromebook 13 G1, MrChromebox UEFI firmware) dual-boots:
|
||||
|
||||
| OS | Disk | Notes |
|
||||
|---|---|---|
|
||||
| KDE neon | `sda`, external USB/SD card (117GB) | primary OS, owns GRUB |
|
||||
| ChromeOS Flex | `mmcblk0`, internal eMMC (29GB) | installed from neon, see below |
|
||||
| FydeOS (was ChromeOS Flex) | `mmcblk0`, internal eMMC (29GB) | installed from neon, see below |
|
||||
|
||||
Because neon lives entirely on external media, the eMMC can be wiped and
|
||||
reinstalled from the running neon system with no risk to neon.
|
||||
@@ -29,7 +32,11 @@ sudo ./install-flex-emmc.sh ~/Downloads/chromeos_<ver>_reven_recovery_stable-cha
|
||||
- Updates the GRUB chainload entry (below) with the new EFI partition's
|
||||
UUID and runs `update-grub`.
|
||||
|
||||
Last installed: 2026-09-27, Flex `16640.57.0` (stable, `reven`).
|
||||
Install history on the eMMC:
|
||||
- 2026-09-27: ChromeOS Flex `16640.57.0` (stable, `reven`). It
|
||||
auto-updated to `16640.61.0` on first boot.
|
||||
- 2026-09-27: **FydeOS** `FydeOS_for_PC_iris_v23.0-SP1-io.bin`
|
||||
(`amd64-fydeos_iris-io`, `16700.56.23.51`), which replaced Flex.
|
||||
|
||||
## Why not just `dd` the image
|
||||
|
||||
@@ -111,7 +118,25 @@ Each of these broke an attempt during the 2026-09-27 install:
|
||||
The log must not be in `/tmp` if another user owns the file (root is
|
||||
denied by `fs.protected_regular`).
|
||||
|
||||
## Resulting layout (2026-09-27)
|
||||
## Resulting layout
|
||||
|
||||
FydeOS (current, 2026-09-27):
|
||||
|
||||
```
|
||||
mmcblk0 29.1G
|
||||
├─mmcblk0p1 23.7G ext4 STATE
|
||||
├─mmcblk0p2 16M KERN-A
|
||||
├─mmcblk0p3 2.7G ext4 ROOT-A
|
||||
├─mmcblk0p4 16M KERN-B
|
||||
├─mmcblk0p5 2.7G ext4 ROOT-B
|
||||
├─mmcblk0p6-7 512B KERN-C / ROOT-C
|
||||
├─mmcblk0p8 16M ext4 OEM
|
||||
├─mmcblk0p9-10 512B reserved / reserved
|
||||
├─mmcblk0p11 8M RWFW
|
||||
└─mmcblk0p12 32M vfat EFI-SYSTEM (UUID F35E-F13C, PARTUUID 18151E4F-...)
|
||||
```
|
||||
|
||||
ChromeOS Flex (2026-09-27, before FydeOS replaced it):
|
||||
|
||||
```
|
||||
mmcblk0 29.1G
|
||||
@@ -126,24 +151,26 @@ mmcblk0 29.1G
|
||||
└─mmcblk0p12 256M vfat EFI-SYSTEM (UUID CBE4-703E)
|
||||
```
|
||||
|
||||
The ESP is copied from the image, so its FAT UUID (`CBE4-703E`) survived
|
||||
the reinstall unchanged. The install itself left the UEFI boot entries
|
||||
The ESP is copied from the image, so its FAT UUID comes from the image:
|
||||
`CBE4-703E` for Flex (it survived the Flex reinstall unchanged) and
|
||||
`F35E-F13C` for FydeOS. The install itself left the UEFI boot entries
|
||||
and `BootOrder` untouched, but Flex's first auto-update changed them.
|
||||
See "Flex takes over the UEFI boot order on updates" below.
|
||||
|
||||
## Booting Flex
|
||||
## Booting ChromeOS (FydeOS)
|
||||
|
||||
Two ways:
|
||||
|
||||
1. **From GRUB** (neon's menu, shown for 5s): the entry "ChromeOS Flex
|
||||
(internal eMMC)" in `/etc/grub.d/40_custom` chainloads Flex's own EFI
|
||||
loader (`crdyboot`) from the eMMC's ESP:
|
||||
(internal eMMC)" in `/etc/grub.d/40_custom` chainloads the eMMC ESP's
|
||||
own loader: FydeOS's GRUB now (Flex's was `crdyboot`). The title was
|
||||
kept on purpose, since FydeOS is still ChromeOS.
|
||||
```
|
||||
menuentry "ChromeOS Flex (internal eMMC)" {
|
||||
insmod part_gpt
|
||||
insmod fat
|
||||
insmod chain
|
||||
search --no-floppy --fs-uuid --set=root CBE4-703E
|
||||
search --no-floppy --fs-uuid --set=root F35E-F13C
|
||||
chainloader /EFI/BOOT/BOOTX64.EFI
|
||||
}
|
||||
```
|
||||
@@ -153,7 +180,7 @@ Two ways:
|
||||
POST): `efibootmgr -v` shows `neon` (Boot0005, on the USB card) and
|
||||
`Internal eMMC` (Boot0001), with `BootOrder` `0005,0001,0000,0003,0002`.
|
||||
With the USB card unplugged, the firmware falls through to `Internal
|
||||
eMMC` and boots Flex with no menu.
|
||||
eMMC` and boots FydeOS with no menu.
|
||||
|
||||
## Flex takes over the UEFI boot order on updates
|
||||
|
||||
@@ -206,13 +233,20 @@ Ways to live with it (none implemented yet):
|
||||
- Deleting `Boot0004` doesn't help: the next update recreates it.
|
||||
Neon's GRUB entry chainloads the ESP directly and doesn't need it.
|
||||
|
||||
## Other ChromiumOS-based images: FydeOS
|
||||
After the FydeOS install, `Boot0004 "ChromeOS Flex"` was stale: it
|
||||
pointed at the old Flex ESP (PARTUUID `2877e60b…`, start sector
|
||||
`0x49000`), which no longer exists, so the firmware skipped it and fell
|
||||
through to neon. It was deleted 2026-09-27 (`efibootmgr -b 0004 -B`),
|
||||
which put `BootOrder` back to `0005,0001,0000,0003,0002`. Expect FydeOS
|
||||
to add its own entry, and move it first, after its first update.
|
||||
|
||||
Checked 2026-09-27, by reading the image only (not installed):
|
||||
## FydeOS
|
||||
|
||||
Checked 2026-09-27 by reading the image, then **installed the same day
|
||||
with `install-flex-emmc.sh` unchanged. It worked on the first try.**
|
||||
`FydeOS_for_PC_iris_v23.0-SP1-io.bin.zip` (board `amd64-fydeos_iris-io`,
|
||||
version `16700.56.23.51`), in `matt`'s `~/Downloads` (extracted copy in
|
||||
`~/fydeos-check`). **`install-flex-emmc.sh` should work with it
|
||||
unchanged.**
|
||||
`~/fydeos-check`).
|
||||
|
||||
- **Same installer image layout:** ROOT-A is p3 (2.7GB), ROOT-B is a
|
||||
2MB placeholder, the ESP is p12. The same `chromeos-install` (Rust)
|
||||
@@ -238,8 +272,8 @@ unchanged.**
|
||||
because Secure Boot is disabled on hp-chell (`mokutil --sb-state`).
|
||||
The image's ESP UUID is `F35E-F13C`.
|
||||
|
||||
Caveats before trying it:
|
||||
- It replaces Flex (same eMMC, full wipe).
|
||||
Notes:
|
||||
- It replaced Flex (same eMMC, full wipe).
|
||||
- The script rewrites the UUID in the `40_custom` entry titled
|
||||
"ChromeOS Flex", so FydeOS boots under that title. Decided
|
||||
2026-09-27 to keep it, since FydeOS is effectively still ChromeOS.
|
||||
@@ -255,4 +289,7 @@ Caveats before trying it:
|
||||
is normal for this class of eMMC). Booted as live/installer media, as
|
||||
explained above. The note at the time that Flex expands STATE on
|
||||
first boot was wrong.
|
||||
- **2026-09-27**: reinstalled properly with `install-flex-emmc.sh`.
|
||||
- **2026-09-27**: reinstalled Flex properly with `install-flex-emmc.sh`.
|
||||
It worked and auto-updated, but took over the UEFI boot order.
|
||||
- **2026-09-27**: switched to FydeOS (`iris` build) with the same
|
||||
script; deleted the stale Flex UEFI entry.
|
||||
|
||||
@@ -16,7 +16,7 @@ This is a real **HP Chromebook 13 G1** ("chell" board), converted from ChromeOS
|
||||
- System: Manufacturer `Google`, Product Name `Chell`, Family `Google_Glados`, Serial `5CD732BLC9` — `Chell`/`Glados` is the Google Chrome OS board/reference codename for the HP Chromebook 13 G1.
|
||||
- Baseboard: Manufacturer `Google`, Product Name `Chell`, Serial `PFYTU018J90043`.
|
||||
- Implication: fanless Core m CPU, no way to add a fan — keep sustained-load expectations modest.
|
||||
- **Storage correction (2026-09-04)**: `sda` (117GB, where `/` lives) is actually an external USB/SD card (`lsblk` shows `TRAN=usb`) — the whole KDE neon install boots from that external card, not from anything internal. The real internal eMMC (`mmcblk0`, ~29GB) was blank until 2026-09-04, when ChromeOS Flex was installed onto it — see "Dual boot" section below. (Superseded the original note here, which incorrectly assumed `sda` was internal.)
|
||||
- **Storage correction (2026-09-04)**: `sda` (117GB, where `/` lives) is actually an external USB/SD card (`lsblk` shows `TRAN=usb`) — the whole KDE neon install boots from that external card, not from anything internal. The real internal eMMC (`mmcblk0`, ~29GB) was blank until 2026-09-04, when ChromeOS Flex was installed onto it — see "Dual boot" below. (Superseded the original note here, which incorrectly assumed `sda` was internal.)
|
||||
|
||||
## Kernel 7.x black-screen bug (diagnosed and fixed 2026-09-03)
|
||||
|
||||
@@ -117,20 +117,23 @@ flash itself, not a recurrence of the underlying i915 bug or a new
|
||||
problem. If it happens again right after a firmware update, try a forced
|
||||
power-off + power-on before assuming anything is actually broken.
|
||||
|
||||
## Dual boot: KDE neon (USB) + ChromeOS Flex (internal eMMC)
|
||||
## Dual boot: KDE neon (USB) + ChromeOS (internal eMMC)
|
||||
|
||||
ChromeOS Flex is installed on the internal eMMC (`/dev/mmcblk0`); neon
|
||||
**FydeOS** (ChromiumOS-based, `iris` build; replaced ChromeOS Flex on
|
||||
2026-09-27) is installed on the internal eMMC (`/dev/mmcblk0`); neon
|
||||
stays on the external `sda`. **Full details are in `CHROMEOS-FLEX.md`**,
|
||||
covering install/reinstall via `install-flex-emmc.sh`, why a raw `dd` of
|
||||
the recovery image boots as live media, `chromeos-install`-from-Linux
|
||||
gotchas, the partition layout, and boot selection.
|
||||
|
||||
Quick reference:
|
||||
- Reinstall: `sudo ./install-flex-emmc.sh <flex .bin.zip or .bin>` (wipes
|
||||
- Reinstall: `sudo ./install-flex-emmc.sh <Flex or FydeOS .bin.zip or .bin>` (wipes
|
||||
the eMMC, masks every other disk, about 2.5 min, log in
|
||||
`/var/log/flex-install.log`).
|
||||
- Boot Flex from neon's GRUB menu with the "ChromeOS Flex (internal
|
||||
- Boot it from neon's GRUB menu with the "ChromeOS Flex (internal
|
||||
eMMC)" entry (in `/etc/grub.d/40_custom`; chainloads the ESP with FS
|
||||
UUID `CBE4-703E`), or from the firmware picker (`Esc` at POST, then
|
||||
`Internal eMMC`). With the USB card unplugged, the firmware boots Flex
|
||||
UUID `F35E-F13C`; title kept from Flex), or from the firmware picker (`Esc` at POST, then
|
||||
`Internal eMMC`). With the USB card unplugged, the firmware boots it
|
||||
directly.
|
||||
- ChromeOS updates re-add a UEFI entry and put it first in `BootOrder`;
|
||||
see `CHROMEOS-FLEX.md`.
|
||||
|
||||
Reference in New Issue
Block a user