06-09-2024, 05:16 PM
(This post was last modified: 06-09-2024, 05:18 PM by Kevin Kofler.)
Well, first you need to get the thing to boot at all, i.e., boot from a microSD card with a known working operating system image. (dd the image to an empty microSD card or one whose contents you can and will wipe through the dd, shut down the PinePhone, remove the battery, insert the microSD card, reinsert the battery, boot the PinePhone.)
Then in that image, open a terminal emulator (or alternatively, use the JumpDrive image, connect the PinePhone to your computer, and open a terminal emulator on that computer), and run:
1. sudo -i (to get root on the system you just booted or on the computer)
2. mkdir /mnt/pinephone-emmc (to create the mount point for the next command)
3. a suitable mount command to mount the eMMC contents to /mnt/pinephone-emmc (a command of the form mount /dev/… /mnt/pinephone-emmc, where you have to figure out the proper device name)
4. mkdir -p /mnt/pinephone-emmc/etc/systemd/system-generators (to create the directory for the next command on the mounted partition)
5. ln -sf /dev/null /mnt/pinephone-emmc/etc/systemd/system-generators/ostree-system-generator (to mask the offending generator on the mounted partition – the ostree-system-generator is entirely useless on Arch Linux, so it is safe to just mask it)
6. umount /mnt/pinephone-emmc (to cleanly unmount the partition now that you are done)
Then shut down the PinePhone, remove the battery, remove the microSD card, reinsert the battery, and it should boot from eMMC again.
Then in that image, open a terminal emulator (or alternatively, use the JumpDrive image, connect the PinePhone to your computer, and open a terminal emulator on that computer), and run:
1. sudo -i (to get root on the system you just booted or on the computer)
2. mkdir /mnt/pinephone-emmc (to create the mount point for the next command)
3. a suitable mount command to mount the eMMC contents to /mnt/pinephone-emmc (a command of the form mount /dev/… /mnt/pinephone-emmc, where you have to figure out the proper device name)
4. mkdir -p /mnt/pinephone-emmc/etc/systemd/system-generators (to create the directory for the next command on the mounted partition)
5. ln -sf /dev/null /mnt/pinephone-emmc/etc/systemd/system-generators/ostree-system-generator (to mask the offending generator on the mounted partition – the ostree-system-generator is entirely useless on Arch Linux, so it is safe to just mask it)
6. umount /mnt/pinephone-emmc (to cleanly unmount the partition now that you are done)
Then shut down the PinePhone, remove the battery, remove the microSD card, reinsert the battery, and it should boot from eMMC again.