danct12, who maintains Arch Linux ARM for the PinePhone, regularly releases prebuilt Arch Linux images. Besides images with Phosh and Plasma preinstalled, there is also a “barebone” image with only a terminal interface.
We are going to use the “barebone” version for a “semi-manual installation”. After flashing it, you manually install the desktop environment. The process looks roughly like this:

This gives you a rough idea of how the PinePhone works. You can even install desktop environments that danct12 does not provide, for example making Phosh, Plasma Mobile, and GNOME coexist.
-
On your computer, download the PinePhone barebone image.
-
Flash it to an SD card. If you have Tow-Boot installed, you can also flash it directly to the PinePhone’s eMMC.
sudo dd if=archlinux-pinephone-barebone-20220729.img of=/dev/sdc bs=100M-
Insert it into the PinePhone and boot the PinePhone from the SD card.
-
After booting, you will be dropped into a terminal interface. The default user is
root, with password root. There is also a normal useralarm, with password 123456. Please connect a keyboard. This is where the fun stops being theoretical.
-
Use nmcli to connect to Wi-Fi. But the hardware Wi-Fi on my PinePhone is fried, sadly, so I used wired networking instead. First, ping something to see whether the network connected automatically:
ping google.com -C 3-
Edit
/etc/pacman.d/mirrorlistwith vi, and uncomment the Taiwan Arch Linux ARM mirror sites to speed up downloads. -
Update system packages:
pacman -Syu- Install the desktop environment and common software. danct12’s repository already groups the needed packages for us:
pacman -S base sudo networkmanager danctnix-usb-tethering openssh firefox- Install Phosh:
pacman -S danctnix-phosh-ui-meta dialog kgx- Or install Plasma Mobile. The two can coexist:
pacman -S danctnix-pm-ui-meta dialog kgx- Enable the desktop environment services:
systemctl enable NetworkManager
systemctl enable ModemManager
systemctl enable sshd
systemctl enable usb-tethering
# If you installed Phosh
systemctl enable phosh
# If you installed Plasma Mobile
systemctl enable lightdm-
That’s it? Yep. Reboot and try entering the system. This is what a minimal installation looks like: basically no software at all. Install Linux apps as needed, and do not forget that Arch Linux ARM can use an AUR Helper too.

-
As you can see from step 8 above, which desktop environment starts is decided by systemd launching the relevant window manager. GNOME’s GDM works the same way. Also, with a physical keyboard, pressing CTRL+ALT+F1 while the system is running switches to TTY.

For a “real manual installation”, see this: download Arch Linux ARM yourself, manually create the boot and root partitions, then shove rootfs into place: https://github.com/dreemurrs-embedded/Pine64-Arch/wiki/Manual-Install-(like-desktop-Arch)