+with io.open(os.path.join(here, "README.rst"), encoding="utf-8") as f:
+    long_description = "\n" + f.read()
+
+if not glob.glob("//usr//include//python3.*//Python.h"):
+    raise RuntimeError(
+        "This package requires a Python development environment. "
+        "Please install the python3-dev package for your distribution."
+    )
+
+board_reqs = []
+raspberry_pi = False
+if os.path.exists("/proc/device-tree/compatible"):
+    with open("/proc/device-tree/compatible", "rb") as f:
+        compat = f.read()
+    # Jetson Nano, TX2, Xavier, etc
+    if b"nvidia,tegra" in compat:
+        board_reqs = ["Jetson.GPIO"]
+    # Pi 5 and Earlier
+    elif (
+        b"brcm,bcm2835" in compat
+        or b"brcm,bcm2836" in compat
+        or b"brcm,bcm2837" in compat
+        or b"brcm,bcm2838" in compat
+        or b"brcm,bcm2711" in compat
+        or b"brcm,bcm2712" in compat
+    ):
+        board_reqs = [
+            "rpi_ws281x>=4.0.0",
+            "lgpio;python_version<'3.13'",
+            "RPi.GPIO",
+            "Adafruit-Blinka-Raspberry-Pi5-Neopixel",
+        ]
+        raspberry_pi = True
+    # BeagleBone Black, Green, PocketBeagle, BeagleBone AI, etc.
+    elif b"ti,am335x" in compat:
+        board_reqs = ["Adafruit_BBIO"]