Below are the steps required to flash postmarketOS (port made by Danct12 based on earlier work by Notkit) and mainline kernel (work done by Kholk and the github.com/somainline group) on the Pro1 msm8998:
2022-03-10. As of today, Danct12's port has not been merged yet, hence there are a couple extra steps to manually apply patches to pmaports
. Beware that this is all work in progress and there will be bugs and missing functionality.
2022-03-12. device-fxtec-qx1000-nonfree-firmware
added to the port, meaning support for model, WLAN and GPU.
pip3 install --user pmbootstrap
pmbootstrap init
and chooseedge
and whatever device (I choseqemu
andaarch64
, but it should not matter, we'll redo it later).cd /path/to/work/directory/you/chose/above/cache_git/pmaports
wget https://gitlab.com/postmarketOS/pmaports/-/merge_requests/2984.patch && git apply 2984.patch
Don't worry about the warnings.pmbootstrap init
and selectfxtec
andqx1000
. I testedgnome
andi3wm
as WM, they both worked.pmbootstrap install
(optionally, usepmbootstrap install --fde
to enable full disk encryption).- Connect Pro1 in bootloader/fastboot mode (
Volume Down
+Power
) to USB2 port. pmbootstrap flasher flash_rootfs
pmbootstrap flasher flash_kernel
fastboot set_active b
fastboot erase dtbo_b
- Boot, type in your FDE passphrase (with keyboard, touchscreen is crazy), and you'll quickly see the touchscreen is mad at you. Use
sudo modprobe -r goodix_ts
to disable it temporarily (it'll be back after a reboot). If you can't open a terminal before disabling the touchscreen, you can stillssh
into the device while it's connected to USB. For me the IP was 172.16.42.1, I assume it will be the same for others; in any case it is shown in the terminal output at the end of step 9 above. - Optional: to clear up space on your computer afterwards, use
pmbootstrap -y zap -hc -d -p -m -o -r
.
Relevant tweets from developers: Angelo (Kholk) some months ago and Danct12 a few days ago.