First, you may be interested in arch linux arm on raspberry pi 5 to get arch linux arm running in the first place.
See this blog post as a helpful starting point: https://blog.jirkabalhar.cz/2024/02/raspberry-camera-on-archlinux-arm-in-2024/
Exact steps there do not work on Raspberry Pi 5, the camera does not get detected even though kernel logs imply it is. /dev/video0 also gets populated, v4l2-ctl can display that it has a YUYV video stream available.
The reason apparently is that RPi5 does not use unicam, but pisp, and that’s not supported by the libcamera fork that blog post is linking to: https://github.com/raspberrypi/libcamera/issues/145
Using https://github.com/raspberrypi/libcamera instead, and replacing meson setup line with this worked with the rest of that guide, I just had to install pybind11 package also (as I wanted pycamera support):
meson setup build --buildtype=release -Dpipelines=rpi/vc4,rpi/pisp -Dipas=rpi/vc4,rpi/pisp -Dv4l2=true -Dtest=false -Dlc-compliance=disabled -Dcam=enabled -Dqcam=disabled -Ddocumentation=disabled -Dpycamera=enabled --reconfigureTip
I can recommend using mediamtx for utilizing the pi camera to directly stream it to the network, for e.g. watching a 3d printer. Integrates nicely into home assistant!
