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 --reconfigure

Tip

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!

a picture of me taken through an IR camera with a rather wide angle, there's a pinkish/purplish tint to everything, I'm waving at the camera, the view is primarily looking at a 3d printer