The modular-community channel

modular-community is Modular's curated channel of community packages: maintainers submit rattler-build recipes by pull request, and CI publishes binary conda packages for multiple platforms.

Mirrored on the shelf

Every channel package appears here automatically — in the tin list and search, badged channel, refreshed every six hours from the channel's repodata and enriched with the maintainer, summary, and repository from its recipe. Installing is uniform:

pixi shelf add emberjson    # or plain: pixi add emberjson

Channel tins are plain conda dependencies: no registry pinning (your pixi.lock records the solved version), and the conda solver owns their dependency graphs. One caveat inherited from the ecosystem: each package carries its own mojo-compiler requirement, so a workspace pinned to a different Mojo era gets a clear solver conflict rather than an install.

How the two kinds differ

Source tins are git repos, registry-pinned to published commits, built from source on install, published here with shelf publish. Channel tins are prebuilt binaries, curated upstream, mirrored read-only — they cannot be published to, installed as submodules, or depended on by name pins. The two share one conda namespace, so channel names are reserved: a publish under a channel package's name is rejected.

The graduation path

When a source tin stabilizes, graduate it to the channel — the CLI does the ceremony:

shelf graduate    # from the tin's repo root

It preflights the tin (pixi package layout, license, pushed commit, summary), generates a channel-ready recipe.yaml — source pinned to your commit, compiler range derived from your pin, a smoke test, license and maintainer filled in — and prints the fork-and-PR steps. Iterate source-first on the shelf; graduate for curated binary distribution. mojoshelf is the fast-iteration layer that feeds the official ecosystem — and retires the day official packaging makes it redundant.