From 9456e5092ff1a7d17c9d0c388ce2f7e15b186e1d Mon Sep 17 00:00:00 2001 From: Jorijn van der Graaf Date: Mon, 12 Oct 2026 01:17:32 +0200 Subject: [PATCH] fp6-img-plasma: both images are named after their shell The Plasma Mobile archive was fp6-img.tar.xz and the Phosh one fp6-img-phosh.tar.xz, so the unmarked one looked like the only one. Both are now fp6-img-.tar.xz and extract to a directory of that name; install.sh's messages and the README say so, and the README names the dialer each shell calls with. The release upload takes dist/* and needs no change. --- .forgejo/workflows/build.yml | 4 ++-- README.md | 13 +++++-------- build.sh | 6 +++--- install.sh | 11 ++++++----- 4 files changed, 16 insertions(+), 18 deletions(-) diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml index 2046b11..3af50cf 100644 --- a/.forgejo/workflows/build.yml +++ b/.forgejo/workflows/build.yml @@ -1,7 +1,7 @@ name: image # Builds the flashable postmarketOS images for the Fairphone 6 (kernel from -# milos-linux combined-stable + imsd) — Plasma Mobile (fp6-img.tar.xz) and +# milos-linux combined-stable + imsd) — Plasma Mobile (fp6-img-plasma.tar.xz) and # Phosh (fp6-img-phosh.tar.xz) — and publishes both as the rolling 'latest' # release. # @@ -40,7 +40,7 @@ jobs: # Second UI from the same package builds (the kernel and the aports # above are already current in pmbootstrap's work dir, so this is the - # install + export only): fp6-img-phosh.tar.xz next to fp6-img.tar.xz + # install + export only): fp6-img-phosh.tar.xz next to fp6-img-plasma.tar.xz # in the same release. - name: Build image (Phosh) run: FP6IMG_UI=phosh FP6IMG_KEEP_DIST=1 ./build.sh diff --git a/README.md b/README.md index aa8ee72..dd4fb70 100644 --- a/README.md +++ b/README.md @@ -20,22 +20,19 @@ VoLTE calls (both directions) through imsd. ## Flashing -Download `fp6-img.tar.xz` from the latest release and unlock the bootloader +Download `fp6-img-{DE}.tar.xz` with your preferred DE from the latest release +(`{DE}` is `plasma` for Plasma Mobile, calls through Plasma Dialer, or `phosh` for +Phosh, calls through GNOME Calls) and unlock the bootloader ([Fairphone's official process](https://support.fairphone.com/hc/en-us/articles/10492476238737)). **Install**: with the phone in fastboot mode, ```sh -tar xf fp6-img.tar.xz -cd fp6-img +tar xf fp6-img-{DE}.tar.xz +cd fp6-img-{DE} ./install.sh ``` -Two images are published per release, same kernel and packages, different -shell: `fp6-img.tar.xz` boots **Plasma Mobile** (calls through Plasma -Dialer), `fp6-img-phosh.tar.xz` boots **Phosh** (calls through GNOME Calls, -via imsd's `imsd-ofono` backend). Pick one; the install steps are identical. - `install.sh` erases dtbo, flashes the rootfs, **RAM-boots** the kernel, writes the boot partition from inside Linux where the bootloader's NV-wipe cannot see it, then reads the modem NV back and reports the result. The bootloader never writes `boot`. diff --git a/build.sh b/build.sh index 6852a95..4aabd3c 100755 --- a/build.sh +++ b/build.sh @@ -35,11 +35,11 @@ REGISTRY=https://forgejo.catcrafts.net/api/packages/Catcrafts/alpine/edge/fp6 # opt-in imsd-ofono subpackage (imsd-ofonod + the GNOME Calls plugin # override) and fp6-login-screen-schema (GNOME Settings' fingerprint row) on # top. Everything else in the package set is UI-agnostic. The -# archive is named after it: fp6-img.tar.xz for plasma-mobile, -# fp6-img-.tar.xz otherwise, so one release can carry both. +# archive is named after it: fp6-img-plasma.tar.xz for plasma-mobile, +# fp6-img-phosh.tar.xz for phosh, so one release can carry both. FP6IMG_UI=${FP6IMG_UI:-plasma-mobile} case "$FP6IMG_UI" in -plasma-mobile) UI_PACKAGES=; IMG_NAME=fp6-img ;; +plasma-mobile) UI_PACKAGES=; IMG_NAME=fp6-img-plasma ;; phosh) UI_PACKAGES=,imsd-ofono,fp6-login-screen-schema; IMG_NAME=fp6-img-phosh ;; *) echo "FP6IMG_UI=$FP6IMG_UI: expected plasma-mobile or phosh" >&2; exit 1 ;; esac diff --git a/install.sh b/install.sh index 1e20126..3034d4c 100755 --- a/install.sh +++ b/install.sh @@ -18,7 +18,8 @@ # Requirements on this machine: fastboot, ssh. Phone: bootloader unlocked, # in fastboot mode (Vol-down + Power), connected over USB. # Run from the directory the release archive extracts to: -# tar xf fp6-img.tar.xz && cd fp6-img && ./install.sh +# tar xf fp6-img-plasma.tar.xz && cd fp6-img-plasma && ./install.sh +# (or the fp6-img-phosh archive) PHONE=172.16.42.1 BOOT=${BOOT:-boot.img} @@ -30,10 +31,10 @@ die() { printf 'ERROR: %s\n' "$*" >&2; exit 1; } # --- preflight --------------------------------------------------------------- command -v fastboot >/dev/null || die "fastboot not found (install android-tools)" command -v ssh >/dev/null || die "ssh not found" -[ -f "$BOOT" ] || die "$BOOT not found - run this from the extracted fp6-img - directory (tar xf fp6-img.tar.xz && cd fp6-img)" -[ -f "$ROOTFS" ] || die "$ROOTFS not found - run this from the extracted fp6-img - directory (tar xf fp6-img.tar.xz && cd fp6-img)" +[ -f "$BOOT" ] || die "$BOOT not found - run this from the extracted release + directory (tar xf fp6-img-plasma.tar.xz && cd fp6-img-plasma, or the phosh one)" +[ -f "$ROOTFS" ] || die "$ROOTFS not found - run this from the extracted release + directory (tar xf fp6-img-plasma.tar.xz && cd fp6-img-plasma, or the phosh one)" # NEVER pipe fastboot into grep -q or anything that exits early: the reader # quitting mid-output SIGPIPEs fastboot to death mid-transaction and leaves # the bootloader's fastboot state machine wedged - the NEXT command then