Catcrafts builds of the nura image for the fairphone 6
  • Shell 85.6%
  • Python 14.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jorijn van der Graaf 66f6e86623
soc-fairphone-fp6-audio 5: install the topology and UCM under the 7.3 card model
Kernel 7.3 names the FP6 sound card "MILOS-Fairphone-Gen6" (upstream's DTS;
7.2 said "Fairphone (Gen. 6)"). The q6apm topology loader requests
qcom/milos/<model>-tplg.bin and alsa-ucm resolves conf.d/milos/<model>.conf,
so the two files are installed under the new name, with the old name as a
symlink to each; the file contents are unchanged. The files either kernel
asks for are present, the one still running between an upgrade and the
reboot included, so the package carries no version bound to the kernel.
A new pkgver rather than a pkgrel, so the kernel can name the floor:
pmbootstrap resolves a versioned dependency on an aport by pkgver alone.

Dev phone with these files: on 7.3 the card MILOS-Fairphone-Gen6 is up with
UCM verb HiFi, its playback PCM runs under pw-play and capture passes;
booted into 7.2 the card Fairphone (Gen. 6) finds its UCM through the link
and capture passes as well.
2026-11-01 02:09:36 +01:00
.forgejo/workflows the images follow the upstream rename: postmarketOS is Nura 2026-10-14 01:41:43 +02:00
aports soc-fairphone-fp6-audio 5: install the topology and UCM under the 7.3 card model 2026-11-01 02:09:36 +01:00
.gitignore gitignore dist/; fix empty then-branch (sh syntax) in the NV verdict 2026-08-09 02:44:39 +02:00
apk-resign.py imsd: sign from a readable copy of the abuild key 2026-09-15 22:36:12 +02:00
build.sh the images follow the upstream rename: postmarketOS is Nura 2026-10-14 01:41:43 +02:00
check-aports.sh fp6-vendor-blobs: the checksum the extractor change forgot, and a check that finds the next one in a second 2026-09-15 22:36:13 +02:00
FUNDING.yml LICENSE, README, FUNDING.yml: GPL-3.0-only for our code, Forgejo's funding file and the shared footer 2026-10-16 23:27:17 +02:00
install.sh the images follow the upstream rename: postmarketOS is Nura 2026-10-14 01:41:43 +02:00
LICENSE LICENSE, README, FUNDING.yml: GPL-3.0-only for our code, Forgejo's funding file and the shared footer 2026-10-16 23:27:17 +02:00
README.md Update README.md 2026-10-16 23:28:40 +02:00
registry-fetch.py build.sh: install the newest registry imsd and fingerprintd, verified the way a phone does 2026-09-15 22:36:13 +02:00

fp6-img

Flashable Nura images for the Fairphone 6/6+, built from the Catcrafts milos-linux combined-stable kernel branch.

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-{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).

Install: with the phone in fastboot mode,

tar xf fp6-img-{DE}.tar.xz
cd fp6-img-{DE}
./install.sh

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 Nura images). Never re-lock the bootloader with a custom image installed.

License

GPL-3.0-only - see LICENSE.

Patches and packaging carried from other projects keep the license named in their files.

Funding

https://catcrafts.net/shop/donation - see FUNDING

Copyright (C) 2026 Catcrafts® catcrafts.net