Skip to content

feat(jetson): JetPack 7 / Ubuntu 24.04 (noble) package - #117

Open
AlexKlimaj wants to merge 2 commits into
mainfrom
feat/jetpack-7-noble
Open

AlexKlimaj wants to merge 2 commits into
mainfrom
feat/jetpack-7-noble

Conversation

@AlexKlimaj

Copy link
Copy Markdown
Member

Why

ark_jetson_kernel#109 flashes JetPack 7.2.1 / L4T R39.2.1 (Ubuntu 24.04 noble). provision.sh there cannot install ARK-OS because only ark-os-jetson-jammy is published, and a jammy venv will not run on noble's Python 3.12.

packaging/build.sh already listed noble:3.12 as a jetson baseline, marked untested. This makes it real.

What

  • CI: add a jetson / noble matrix leg on ubuntu-24.04-arm so PRs and tags produce ark-os-jetson-noble_<ver>_arm64.deb.
  • install_ark_os.sh: detect PEP 668 (EXTERNALLY-MANAGED) and pass --break-system-packages so jtop can still be a system install on 24.04.
  • Pin JETSON_STATS_VERSION to 7.2.1 (maps L4T R39.2.1 / JP 7.2.1, includes the Orin JP7 GPU/tegrastats fixes). 4.3.2 reports Jetpack as not detected on JP7.
  • GPIO helpers: VBUS_DET is pinmuxed on L4T R36 and later (JP6 and JP7), not only when the string R36 appears. Shared helper l4t_compat.py.
  • Docs: jammy = JetPack 6, noble = JetPack 7. extras/install_ros2.sh refuses noble (Humble is Jammy-only; use Jazzy).

The jammy (JetPack 6) package path is unchanged.

Follow-up in ark_jetson_kernel

Once CI attaches a noble deb (PR artifact, or a draft-* / v* release):

  • provision.sh currently hardcodes ark-os-jetson-jammy and only searches that prefix on fallback.
  • Point JP7 images at ark-os-jetson-noble and bump JETSON_STATS_VERSION to 7.2.1 to match packaging/versions.env.

Tested

  • l4t_compat parse of R35 / R36 / R39 (R35 still drives VBUS as GPIO; R36+ skip).
  • Live JP7 PAB V3 (# R39 (release), REVISION: 2.1, Ubuntu 24.04.4, Python 3.12.3): PEP 668 present, polkit 124, libssl3t64, gpiochip/i2c/can present. Full .deb install waits on the noble CI artifact.

Build ark-os-jetson-noble on ubuntu-24.04-arm (Python 3.12), treat L4T
R36+ VBUS_DET as pinmuxed so JP7 matches JP6, and install jtop 7.2.1
with PEP 668 --break-system-packages on noble.

The jammy (JetPack 6) package is unchanged.
pip no longer drops jtop.service; 7.x requires `jtop --install-service`.
Without it system-manager reports Jetson hardware as Not available.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant