I really needed to run a compositor from an arch chroot and systemd’s udev is straight up broken in chroot, so I used libudev-zero and made sure that every time systemd updated I would delete the libudev .so file and plunk libudev-zero ontop of it, no i’ve moved on to greener pastures (Artix) but hey, it did work.
Now THIS is a duct tape solution!