Prefix.dev logoPrefix.dev logo
Channels
Paxton with wand and angel wings on starry night sky background
Pixi
How to manage dependencies
Rattler Build
How to build conda packages
Rattler API
Rust + Python Bindings
Channels
How to host your own packages
GraphQL API
How to use our GraphQL API
API Keys
Set your own API keys
Go to Overview
Paxton with wand and angel wings on starry night sky background
pixi
Our Open Source Software Package Manager
rattler-build
The fast package build tool
rattler
Low-level Rust & Python libraries to create conda environments quickly
Prefix.dev
Browse packages & Host your own
Blog
Pricing
Sign in
0
Paxton with wand and angel wings on starry night sky background
Pixi
How to manage dependencies
Rattler Build
How to build conda packages
Rattler API
Rust + Python Bindings
Channels
How to host your own packages
GraphQL API
How to use our GraphQL API
API Keys
Set your own API keys
Go to Overview
Paxton with wand and angel wings on starry night sky background
pixi
Our Open Source Software Package Manager
rattler-build
The fast package build tool
rattler
Low-level Rust & Python libraries to create conda environments quickly
Prefix.dev
Browse packages & Host your own
0

Prefix.dev

  • prefix
  • Overview
  • Browse packages
  • API and API Keys
  • GraphQL API
  • Channels
  • Overview
  • Find and inspect channels
  • Paths and priority
  • Create and configure
  • Use channels
  • Publish packages
  • Manage access
  • Lifecycle
  • Pixi
  • Documentation
  • Repository
  • rattler-build
  • Documentation
  • Repository
  • rattler
  • Rust API
  • Python API
  • Repository

Understand channel paths and priorityUnderstand visibility, mirrors, namespaces, and base or override priority.

A channel path tells tools where to find packages. Channel priority helps the solver choose between package candidates from different sources.

A solver is the part of Pixi, conda, mamba, or micromamba that selects a compatible set of package versions and builds for an environment.

Channel types

  • A public channel is open for anyone to browse and download. You do not need channel credentials to use it.

  • A private channel is available only to people and tools that have been given access.

  • A mirror channel follows packages from an external source. You can browse it on prefix.dev, but the website does not offer settings or package uploads for mirrors.

Namespaces and primary channels

Every channel belongs to a namespace. The namespace is the URL-safe owner identifier and forms the first segment of the channel path.

A namespace has one primary channel, addressed by the namespace alone. Additional channels are non-primary and add their local channel name as a second segment.

The channel overview displays the canonical reference. Copy it rather than constructing it from the display name.

Canonical channel paths

Type

Canonical reference

Website page

Package repository URL

Primary

<namespace>

https://prefix.dev/channels/<namespace>

https://prefix.dev/<namespace>

Non-primary

<namespace>/<channel>

https://prefix.dev/channels/@<namespace>/<channel>

https://prefix.dev/<namespace>/<channel>

The @ appears only in the website route. Do not use it in package-manager, upload, API, or repository paths.

For example, the canonical reference acme/research maps to:

  • website: https://prefix.dev/channels/@acme/research

  • package repository: https://prefix.dev/acme/research

Base and override priority

You can connect a channel to a base channel, an overrides channel, or both. This lets your channel build on another package set without copying its packages.

The package installation card generates the complete channel list in this order, from highest to lowest priority:

base channel -> current channel -> overrides channel
  • Choose a Base Channel when that source should have higher priority than the current channel.

  • Choose an Overrides Channel when the current channel should have higher priority.

prefix.dev also writes these relations to repodata, the channel index downloaded by package solvers, using the CEP-0042 convention. Client support varies, so copy the complete generated command instead of assuming that a client will discover related channels automatically.

Channel order is only part of a solve. Existing configured channels and a client’s strict, flexible, or disabled priority mode can change which candidate is selected. A higher-priority channel can also supply an older build.

A channel cannot relate to itself, and the same channel cannot be both base and override. The complete relation graph must remain acyclic: indirect cycles such as A → B → A cause clients that support CEP-0042 relations to abort resolution.

Next steps

  • Create and configure a channel

  • Use public and private channels

Previous Chapter

Find and inspect channels

Next Chapter

Create and configure
Understand channel paths and priority
  • Channel types
  • Namespaces and primary channels
  • Canonical channel paths
  • Base and override priority
  • Next steps
Last render: 8/7/2026, 5:29:56 PM
Tools
pixi open source package managerrattler-build a conda package builder in Rustrattler Rust crates to work with condamamba a cross-platform package managerquetz host packages easily
Company
TeamImprintContact us
Docs
OverviewBrowse packagesAPI and API KeysGraphQL API
BlogChannelsReport Issues
Prefix.dev logoPrefix.dev logo
Prefix.dev logoPrefix.dev logo
© Prefix.dev GmbH All rights reserved.
Terms of ServicePrivacy Policy
Prefix.dev logoPrefix.dev logo
All systems operational