Skip to content

Add support for rattler-build-config#2309

Draft
pavelzw wants to merge 1 commit intoconda-forge:mainfrom
pavelzw:rattler-build-config
Draft

Add support for rattler-build-config#2309
pavelzw wants to merge 1 commit intoconda-forge:mainfrom
pavelzw:rattler-build-config

Conversation

@pavelzw
Copy link
Member

@pavelzw pavelzw commented Apr 28, 2025

Checklist

  • Added a news entry
  • Regenerated schema JSON if schema altered (python conda_smithy/schema.py)

closes #2226 (only the channel part, not priority), xref prefix-dev/rattler-build#1563, prefix-dev/rattler-build#1593

# rattler-build-config.toml
default-channels = ["conda-forge/labels/rust_dev", "conda-forge"]

Copy link
Member

@beckermr beckermr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we forcing users to use a new thing in order to specify channels etc?

Rattler should be reading the variant config keys.

I don't like this change at all.

@beckermr
Copy link
Member

Also this configuration will not work with the ci-setup package and how it handles channels.

@pavelzw
Copy link
Member Author

pavelzw commented Apr 28, 2025

my main idea was to reuse pixi-config for mirror + s3 configuration and package-format. channels were a natural addition since they are also in the pixi config crate.

but i can also adjust the behavior and read them from the variant config instead

@wolfv
Copy link
Member

wolfv commented Apr 29, 2025

I think this might be orthogonal.

Yes, rattler-build should read the channels from the variant config.

But just like conda-build, the default channels should be read from the "configuration file" (which is pixi.toml or rattler-build.toml file on the system). conda-build reads the config from the .condarc file.

While I think it's OK to read the configuration for channels from the variant config, I am not sure in how far the "variant config" is the "only" config for conda build tools.
There are certainly things outside the variant config (e.g. how many parallel processes should be used, compression level, ...) that fall outside the "variant config".

@beckermr
Copy link
Member

Ah yes. That makes sense. We need to redirect this pr to the ci-setup package. This is where we handle conda build options.

@beckermr
Copy link
Member

@wolfv @pavelzw We set items in the condarc on the fly via the ci-setup package here: https://github.com/conda-forge/conda-forge-ci-setup-feedstock/blob/main/recipe/conda_forge_ci_setup/build_utils.py.

Items go into the ci-setup package when they can be done without rerenders. I am guessing for the rattler build settings this is true. So we should have a similar mechanism for rattler build that reads settings out of the conda-forge.yml and applies them properly during the build.

@pavelzw
Copy link
Member Author

pavelzw commented Apr 29, 2025

channel_sources support for rattler-build: prefix-dev/rattler-build#1597

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.

v1 recipe and channel_sources and priority

3 participants