Problem
When install.sh runs inside a terminal that has conda auto-activated (e.g. via conda init), uv sync picks up conda's environment and links against conda's C++ / Qt libraries. After installation, the resulting .venv carries stale references to conda's shared libraries — particularly the XCB platform plugin — which were compiled against a different C++ ABI.
This causes runtime errors like:
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" ...
because the XCB plugin in the uv-installed Qt package was compiled against system libraries, but conda's libraries shadow them at link time.
Proposed fix
Add a conda detection + deactivation step in install.sh before uv sync runs (i.e. in main() or a new helper called from main()):
- Check whether conda is active (
$CONDA_DEFAULT_ENV is set, or conda is on PATH).
- If detected, run
conda deactivate (possibly in a loop until $CONDA_DEFAULT_ENV is unset, since stacked activations are possible).
- Inform the user that conda was deactivated for the duration of the install.
- Proceed with
uv sync in a clean environment so Qt and its platform plugins link against the correct system libraries.
Acceptance criteria
Problem
When
install.shruns inside a terminal that has conda auto-activated (e.g. viaconda init),uv syncpicks up conda's environment and links against conda's C++ / Qt libraries. After installation, the resulting.venvcarries stale references to conda's shared libraries — particularly the XCB platform plugin — which were compiled against a different C++ ABI.This causes runtime errors like:
because the XCB plugin in the uv-installed Qt package was compiled against system libraries, but conda's libraries shadow them at link time.
Proposed fix
Add a conda detection + deactivation step in
install.shbeforeuv syncruns (i.e. inmain()or a new helper called frommain()):$CONDA_DEFAULT_ENVis set, orcondais onPATH).conda deactivate(possibly in a loop until$CONDA_DEFAULT_ENVis unset, since stacked activations are possible).uv syncin a clean environment so Qt and its platform plugins link against the correct system libraries.Acceptance criteria
install.shdetects an active conda environment and deactivates it before callinguv sync.