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.