Use provisioned native Python from plain onroad shell launch

This commit is contained in:
firestar5683
2026-09-19 16:40:22 -07:00
parent 6ba28be318
commit a2958ff9f0
2 changed files with 6 additions and 1 deletions
+5
View File
@@ -1,3 +1,8 @@
#!/usr/bin/env bash
set -euo pipefail
if [ -f /TICI ]; then
# A plain device shell does not activate openpilot's Python environment.
export PYTHONPATH="/data/roadscore-feasibility/venv/lib/python3.12/site-packages${PYTHONPATH:+:$PYTHONPATH}"
exec /usr/local/venv/bin/python "$(dirname "$0")/prototype/normal_onroad.py" "$@"
fi
exec python3 "$(dirname "$0")/prototype/normal_onroad.py" "$@"
+1 -1
View File
@@ -5,7 +5,7 @@ from presentation_policy import effective_config,selected as presentation_policy
from pathlib import Path
from composer_choice import choice,NAMES
from ace_profiles import selected
root=Path('/data/roadscore');files=[root/'prototype'/name for name in ['app.py','engagement_presentation.py','signal_shaker.py','core_apex.py','presentation_policy.py','presentation_status.py','render_policy.py','worker.py','core.py','musical.py','rolling.py','event_music.py','render_clock.py','song_form.py','section_bank.py','bar_grid.py','audio_policy.py','musical_gestures.py','gesture_bank.py','composition_policy.py','graph_cache.py']]+[Path('/data/sa3-feasibility/native_sa3.py')]
root=Path('/data/roadscore');files=[root/'prototype'/name for name in ['app.py','alert_accent.py','engagement_presentation.py','signal_shaker.py','core_apex.py','presentation_policy.py','presentation_status.py','render_policy.py','worker.py','core.py','musical.py','rolling.py','event_music.py','render_clock.py','song_form.py','section_bank.py','bar_grid.py','audio_policy.py','musical_gestures.py','gesture_bank.py','composition_policy.py','graph_cache.py']]+[Path('/data/sa3-feasibility/native_sa3.py')]
result={'presentation_policy':presentation_policy_selected(),'render_mode':render_mode_selected(),'backend':NAMES[choice()],'composer':choice(),'implementation_sha256':{str(p):hashlib.sha256(p.read_bytes()).hexdigest() for p in files if p.exists()},'runtime':effective_config(json.loads((root/'runtime.json').read_text())),'weight_hash':'not collected in this integration pass'}
source=root/('assets/source_'+result['runtime'].get('identity','legacy')+'.wav')
if choice()=='ace':