- Shell 85.6%
- Python 14.4%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Alpine's community/modemmanager moved to upstream commit 7f0bf17a (2026-10-05, 63 commits past our d776ea38) and now carries the XMM7360 big-endian patch itself. Its 1.25.95_git20261005-r0 sorts above our 1.25.95_git20260709-r101, so the next 'apk upgrade' on a phone would have replaced this fork with Alpine's build and dropped the two GNSS patches (MR !1463, still not merged). Move the pin to Alpine's commit; the two GNSS patches re-exported on it (the same lines, only the hunk offsets moved, the result equal to the merge request's current head); keep the XMM7360 patch, which Alpine's aport has byte-for-byte. The makedepends no longer pin libqmi-dev to >=1.39.1: the GNSS patch raises meson's own qmi-glib requirement to 1.39.1 and every libqmi snapshot in reach reports that, while apk's view of Alpine's 1.38.0_git* version would fail the pin. |
||
| .forgejo/workflows | ||
| aports | ||
| .gitignore | ||
| apk-resign.py | ||
| build.sh | ||
| check-aports.sh | ||
| install.sh | ||
| README.md | ||
| registry-fetch.py | ||
fp6-img
Flashable postmarketOS images for the
Fairphone 6/6+, built nightly from the
Catcrafts milos-linux
combined-stable kernel branch, with
imsd (userspace VoLTE)
preinstalled.
Maintained by Jorijn van der Graaf (TheMightyCat) at Catcrafts.
What works
Everything on the combined-stable branch: display, touch, wifi, cellular
data, NFC (reader), speaker audio, microphone, IMU, magnetometer, barometer,
ambient light/proximity, fingerprint unlock through
fingerprintd, plus
VoLTE calls (both directions) through imsd.
Flashing
Download fp6-img.tar.xz from the latest release and unlock the bootloader
(Fairphone's official process).
Install: with the phone in fastboot mode,
tar xf fp6-img.tar.xz
cd fp6-img
./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.
Default login: user / 147147 (same as official postmarketOS images).
Never re-lock the bootloader with a custom image installed.
VoLTE configuration
imsd is installed but needs your carrier's P-CSCF address:
# /etc/imsd.env
PCSCF=<your carrier's P-CSCF IPv6 address>
Find it via android adb using adb shell dumpsys telephony.registry, then
systemctl restart imsd (the service is enabled at boot and waits for this
file to exist). See the
imsd README for the full
variable reference and carrier assumptions.