Arduino code generally is not run on small Linux boards like Raspberry Pi, BeagleBone, etc. Why?
Linux is a full operating system, which allows many things to be run at once. Arduino code would have to learn to share resources and not use the whole processor, especially in infinite loops. Maybe this functionality will be added one day but it is not available now.
Python is very, very popular on Linux boards. CircuitPython can run on small Linux boards via a helper layer from Adafruit called Blinka. This provides the needed mapping between what CircuitPython might do on a microcontroller and how it may run on Linux. They are designed to play well together (as long as your code is written "well" also.
So for small single board computers based on Linux, CircuitPython is your only choice at present. But it is a good choice as Python and Linux work so well together.
We won't cover the details on using hardware via CircuitPython on Linux in this guide. Check out our guide on Blinka here