Skip to content

chore: replace deprecated cuda system-requirements with named platform - #18

Merged
kratsg merged 2 commits into
mainfrom
chore/pixi-cuda-named-platform
Oct 8, 2026
Merged

kratsg merged 2 commits into
mainfrom
chore/pixi-cuda-named-platform

Conversation

@kratsg

@kratsg kratsg commented Oct 8, 2026 •

Copy link
Copy Markdown
Collaborator

Resolves #15

Summary

pixi deprecated [system-requirements] in favor of rich/named platforms in [workspace].platforms (system requirements, platform definition).

  • Add { name = "linux-64-cuda", platform = "linux-64", cuda = "13.0" } to [workspace].platforms
  • Drop [feature.mlgpu.system-requirements]; bind mlgpu via platforms = ["linux-64-cuda"]
  • Update CLAUDE.md / CONTRIBUTING.md descriptions

pixi info confirms ml → linux-64-cuda (cuda=13.0) only, mlcpu → linux-64 only.

Notes

  • pixi.lock unchanged: pixi matches locked entries by subdir + virtual packages, so pixi lock --check reports it up to date (no re-solve).
  • requires-pixi: existing >=0.76.2 already covers rich platforms (added in pixi 0.71.0). Not bumped to >=0.78.0 (which writes manifest platform names into the lockfile instead of pN aliases) since nothing here needs it.
  • The dev environment now also lists linux-64-cuda as a target platform (it has no platform restriction). Harmless, but could pin [feature.dev] to plain platforms if preferred.

Test plan

  • pixi info shows expected environment platforms
  • pixi lock --check passes
  • Docker builds for both images: not run locally (Docker daemon was down); relying on the CI matrix for this PR. Key thing to watch: the GPU build sets CONDA_OVERRIDE_CUDA below the declared cuda = "13.0"; confirm pixi install --locked -e ml still accepts it.

🤖 Generated with Claude Code

kratsg added 2 commits October 8, 2026 14:07
pixi deprecated `[system-requirements]` in favor of rich platform
entries in `[workspace].platforms`. Declare a named `linux-64-cuda`
platform (cuda = "13.0") and bind the `mlgpu` feature to it, so the
`ml` environment targets only that platform while `mlcpu` stays on
plain `linux-64`.

pixi.lock is unchanged: pixi matches locked entries by subdir and
virtual packages, so `pixi lock --check` reports it as up to date.
The existing `requires-pixi = ">=0.76.2"` already covers rich
platforms (introduced in pixi 0.71.0).

Assisted-by: Claude (Anthropic)
@kratsg
kratsg merged commit ef36119 into main Oct 8, 2026
2 checks passed
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.

fix up cuda

1 participant