Skip to content

Split/tools bootstrap#21

Open
simonevadi wants to merge 1 commit into
mainfrom
split/tools-bootstrap
Open

Split/tools bootstrap#21
simonevadi wants to merge 1 commit into
mainfrom
split/tools-bootstrap

Conversation

@simonevadi

Copy link
Copy Markdown

Add a bootstrap script to prepare a local development environment for rayx. The script:

  • checks that uv is available
  • updates the git submodules
  • creates or reuses .venv with Python 3.12 by default
  • installs rayx in editable mode with uv pip install -e .

By default, the script asks whether the build should use NVIDIA/CUDA support. If you just press Enter, it builds with NVIDIA support enabled.

Available flags:

  • --with-nvidia or --nvidia: build with NVIDIA/CUDA support
  • --without-nvidia or --no-nvidia: build without NVIDIA/CUDA support
  • --help: show the bootstrap usage message

When NVIDIA mode is enabled, the script checks for nvidia-smi and nvcc before starting the build. When NVIDIA mode is disabled, it passes -DRAYX_ENABLE_CUDA=OFF so the build proceeds without CUDA.

After completion, the development environment is ready to use. Activate it with:

source .venv/bin/activate

At the same time, the rayx makefile makes cuda optional so that the rayx-python project can be developed also on machines without nvidia.

@Atraxus Atraxus left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with the changes mostly, we definitely need to lower the hurdle to start developing rayx-python. I have some notes:

  1. The install_nvidia reference is somehting I would either move to the docs or remove entirely to keep the project root clean.
  2. I noticed HDF5 as a build requirement, which is not yet mentioned in our README
  3. I've drafted a README that includes the requirements and build steps in one place — install instructions, dependency list (including HDF5, now labeled as a hard requirement with a link to the HDF5 docs rather than a walkthrough), and both build paths (CMake in-place, uv pip install -e .). Maybe that would work as a middle ground?

README.md

Feel free to merge after considering these

@Atraxus Atraxus force-pushed the split/tools-bootstrap branch from a1613fa to 9a98a8d Compare July 2, 2026 14:44
@Atraxus Atraxus removed the request for review from valentinstoecker July 2, 2026 14:47
@Atraxus Atraxus enabled auto-merge (rebase) July 2, 2026 14:50
@Atraxus Atraxus disabled auto-merge July 6, 2026 14:16
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.

2 participants