Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@ on:
push:
branches:
- main
- '2027'
tags:
- '*'

jobs:
ci:
uses: robotpy/build-actions/.github/workflows/package-pure.yml@v2025
uses: robotpy/build-actions/.github/workflows/package-pure.yml@v2027
with:
enable_sphinx_check: false
secrets:
Expand Down
27 changes: 24 additions & 3 deletions robotpy_installer/_pipstub.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,41 @@
# This hacks around pip's lack of support for supporting environment markers
# when specifying --platform/--abi/--implementation etc
#
# In principle we could just directly patch pip on the robot but that
# has its own share of downsides so we just do this instead
#

import platform
import runpy
import sysconfig
import os
import sys

# TODO: better detection needed to ensure we only run this on systemcore
# but this is fine for now?
if sysconfig.get_platform() == "linux-aarch64":
try:
import pip._vendor.packaging.tags as tags

def platform_tags():
for i in reversed(range(17, 38)):
yield f"manylinux_2_{i}_aarch64"

yield "linux_systemcore"
yield "linux_aarch64"

tags.platform_tags = platform_tags

except ImportError:
pass


if __name__ == "__main__":
# Setup environment for what the RoboRIO python would have
# Setup environment for what the SystemCore python would have
# -> strictly speaking we only care about platform.machine as that's what
# we're using in robotpy-meta, but the rest for completeness
sysconfig.get_platform = lambda: "linux_roborio"
platform.machine = lambda: "roborio"
sysconfig.get_platform = lambda: "linux-systemcore"
platform.machine = lambda: "systemcore"
platform.python_implementation = lambda: "CPython"
platform.system = lambda: "Linux"
platform.python_version = lambda: "3.13.0"
Expand Down
Loading