Using custom channels#
How to install plugins from custom or private channels.
Configure channels first#
conda-self uses your configured channels for all operations. Use conda config to add a custom channel:
conda config --add channels my-channel -n base
Then install normally:
conda self install my-plugin
Why inline specs are rejected#
conda self install conda-forge::my-plugin is not supported.
Inline channel specs would cause inconsistencies between install
and update operations – the channel would apply to the install
but not to future updates, leading to unexpected solver behavior.
Instead, configure channels once and let all operations use the same configuration.
Channel priority#
Channels are searched in the order they appear in your configuration. The first channel with a matching package wins (in strict mode) or packages from all channels are considered (in flexible mode).
You can inspect channels with conda info or by showing config values:
conda config --show channels
conda config --show channel_priority
Private channels#
For private channels that require authentication (e.g. on anaconda.org or prefix.dev), configure tokens via:
conda token set <token> -c https://my-channel.example.com
Or use conda’s standard authentication mechanisms. conda-self inherits all authentication settings from your conda configuration.
Multiple channels#
If a plugin is available on multiple channels, conda will use the one with highest priority:
conda config --add channels conda-forge -n base
conda config --add channels my-company-channel -n base
# my-company-channel has higher priority (added last)
conda self install my-plugin