How I installed Chimera Linux on PineNote
Get a console
Connect PineNote to a Linux machine in series with a USB-to-Serial board.
Open console:
# need uucp group, or use doas
picocom /dev/ttyUSB0 -b 1500000
C-a C-x to exit. Use the reset command in host terminal when the output becomes garbled.
Install file tree
Download chimera-linux-aarch64-ROOTFS-20250420-full from https://chimera-linux.org/downloads/.
mkfs.f2fs /dev/<PART>
mount /dev/<PART> /mnt
cd /mnt
bsdtar xf ~/chimera-linux-aarch64-ROOTFS-20250420-full.tar.gz
rsync -a /boot/ boot/ # copy the kernels
rsync -a /lib/modules/ lib/modules/ # drivers, like that of WiFi
rsync -a /lib/firmware/ lib/firmware/ # frimware used by drivers
bin/chimera-chroot .
Follow the section “Prepare the System”.
apk add u-boot-menu
update-u-boot
Copy the device tree binary
Open /mnt/boot/extlinux/extlinux.conf (new) and /boot/extlinux/extlinux.conf (old).
You will find lines like this in the old extlinux.conf.
Copy the file /usr/lib/linux-image-6.12.11-pinenote-202502161807-00386-gc94452303a55/rockchip/rk3566-pinenote-v1.2.dtb to /mnt/boot/, add the following line to the new extlinux.conf:
fdt /boot/rk3566-pinenote-v1.2.dtb
It now boots from u-boot.
Fixing login terminal
The serial tty works with u-boot, Debain, but not Chimera Linux. The login prompt seems confused. Any key typed submits a line.
Replace APPEND lines in /mnt/boot/extlinux/extlinux.conf with this line:
append root=<DON'T CHANGE> ignore_loglevel rw rootwait earlycon console=tty0 console=ttyS2,1500000n8 fw_devlink=off quiet loglevel=3 systemd.show_status=auto rd.udev.log_level=3 splash plymouth.ignore-serial-consoles vt.global_cursor_default=0
Persisting change to u-boot menu
After verifying that you can log in, you may edit /etc/default/u-boot (see update-u-boot(8)). You can also do this from the very start.
/etc/default/u-boot:
U_BOOT_FDT="/boot/rk3566-pinenote-v1.2.dtb"
U_BOOT_CMDLINE="rw rootwait earlycon console=tty0 console=ttyS2,1500000n8 fw_devlink=off quiet loglevel=3 rd.udev.log_level=3 plymouth.ignore-serial-consoles vt.global_cursor_default=0 dinit_early_root_remount=rw,rshared"
Edit the update-u-boot.
# change
printf "ro single "
# to
printf "single "
I raised the question to Chimera cports.
Then apply:
# bin/chimera-chroot .
(chroot) # update-u-boot
Generating U-Boot menu at /boot/extlinux/extlinux.conf...
(chroot) #
Wouldn’t you like static linking?
FYI, the update-u-boot source code: https://github.com/chimera-linux/cports/blob/f343575ba72c3f072b2aed3455ade7a5600a223a/main/u-boot-menu/files/update-u-boot.sh
Make u-boot default select a kernel
Always done by default. See /boot/extlinux/extlinux.conf.
WLAN
Use networkmanager. https://chimera-linux.org/docs/configuration/network
nmcli d wifi list
nmcli d wifi connect ESSID password PASSWORD
iwd (ignore this section)
iwd doesn’t seem to work. the log file shows that the Linux kernel lacks CRYPTO* or something. wpasupplicant can scan networks. iwd cannot.
apk add iwd
dinitctl enable iwd
iwctl
If you see Hardware: <Disabled> in iwctl >> Radio, the firmware is not installed (shouldn’t happen if you did rsync commands above).
Make serial console delete key work
apk add chimera-repo-user
apk add fish-shell kitty-terminfo
fish
if status is-login
set -x TERM xterm-kitty
end
Advanced ZMODEM (Missing)
sz/rz commands don’t seem to be available on Chimera Linux repos yet.
When installed on both sides, ZMODEM allows sending and receiving files over the serial connection (opened by picocom or other programs).
Transfer files with kitty
apk add kitty-kitten
kitten transfer remote-src local-dest
Use iwd, auto connect, disable router DNS
dinitctl enable iwd
dinitctl disable networkmanager
dinitctl disable networkmanager
iwctl
station wlan0 scan
station wlan0 get-networks
station wlan0 connect <SSID>
Add to /var/lib/iwd/<SSID>.psk:
[Settings]
AutoConnect=true
Add to /etc/iwd/main.conf:
[Network]
NameResolvingService=none
TK: Fix reboot
The reboot command seems to put the deice to [sleep and charge] mode. TK
Fix sysboot menu timeout
Put this at the top of /boot/extlinux/extlinux.conf:
default l1
menu title Chimera Linux
prompt 1
timeout 10
It’s probably about case sensitivity. It should all be lower case.
Epilogue
Enjoy your statically linked Linux distro!