2023-07-28 20:01:17 +03:00
|
|
|
|
# this is what docs.conda.io refers to as `miniconda`
|
|
|
|
|
|
2024-02-01 20:09:57 +03:00
|
|
|
|
# conda requires conda to build conda since 23.11. so, we use miniconda's installer script
|
|
|
|
|
# into a venv
|
|
|
|
|
|
|
|
|
|
warnings:
|
|
|
|
|
- vendored
|
2023-07-28 20:01:17 +03:00
|
|
|
|
|
|
|
|
|
versions:
|
2024-02-01 20:09:57 +03:00
|
|
|
|
url: https://repo.anaconda.com/miniconda/
|
|
|
|
|
match: /Miniconda3-py311_\d+\.\d+\.\d+-1-MacOSX-arm64.sh/
|
|
|
|
|
strip:
|
|
|
|
|
- /Miniconda3-py311_/
|
|
|
|
|
- /-1-MacOSX-arm64.sh/
|
2023-07-28 20:01:17 +03:00
|
|
|
|
|
|
|
|
|
dependencies:
|
|
|
|
|
python.org: ~3.11
|
|
|
|
|
|
2024-02-01 20:09:57 +03:00
|
|
|
|
runtime:
|
|
|
|
|
env:
|
2024-02-01 20:43:05 +03:00
|
|
|
|
# https://github.com/conda/conda/issues/9356#issuecomment-577271046
|
|
|
|
|
PYTHONPATH: '{{prefix}}/lib/python3.11/site-packages'
|
2024-02-01 20:09:57 +03:00
|
|
|
|
|
2023-07-28 20:01:17 +03:00
|
|
|
|
build:
|
|
|
|
|
dependencies:
|
|
|
|
|
gnu.org/patch: '*'
|
2024-02-01 20:09:57 +03:00
|
|
|
|
curl.se: '*'
|
2023-07-28 20:01:17 +03:00
|
|
|
|
script:
|
2024-02-01 20:09:57 +03:00
|
|
|
|
- bkpyvenv stage {{prefix}} {{version}}
|
|
|
|
|
- curl -LS https://repo.anaconda.com/miniconda/Miniconda3-py311_{{version}}-1-${SUFFIX}.sh -o miniconda.sh
|
|
|
|
|
- chmod +x miniconda.sh
|
|
|
|
|
- ./miniconda.sh -b -f -s -p {{prefix}}/venv
|
|
|
|
|
|
2023-07-28 20:01:17 +03:00
|
|
|
|
# stops conda from installing to our versioned prefix by default
|
2024-02-01 20:09:57 +03:00
|
|
|
|
- run: |
|
|
|
|
|
cd conda-{{version}}-*/lib/python3.11/site-packages
|
|
|
|
|
patch -p1 < $SRCROOT/props/context.py.diff
|
|
|
|
|
working-directory: ${{prefix}}/venv/pkgs
|
|
|
|
|
- run: patch -p1 < $SRCROOT/props/context.py.diff
|
|
|
|
|
working-directory: ${{prefix}}/venv/lib/python3.11/site-packages
|
2023-07-28 20:01:17 +03:00
|
|
|
|
|
|
|
|
|
# we desire to provide a conda that doesn’t require you to force it into
|
|
|
|
|
# your shellrc this command modifies the installation to prevent it
|
|
|
|
|
# erroring so we have to do prior to pkging it
|
2024-02-01 20:09:57 +03:00
|
|
|
|
- bkpyvenv seal {{prefix}} conda
|
2023-07-28 20:01:17 +03:00
|
|
|
|
- '{{prefix}}/bin/conda init'
|
2024-02-01 20:09:57 +03:00
|
|
|
|
env:
|
|
|
|
|
darwin/aarch64:
|
|
|
|
|
SUFFIX: MacOSX-arm64
|
|
|
|
|
darwin/x86-64:
|
|
|
|
|
SUFFIX: MacOSX-x86_64
|
|
|
|
|
linux/x86-64:
|
|
|
|
|
SUFFIX: Linux-x86_64
|
|
|
|
|
linux/aarch64:
|
|
|
|
|
SUFFIX: Linux-aarch64 # not arm64. weird.
|
2023-07-28 20:01:17 +03:00
|
|
|
|
|
|
|
|
|
provides:
|
|
|
|
|
- bin/conda
|
|
|
|
|
|
|
|
|
|
test:
|
|
|
|
|
- conda --version | grep {{version}}
|
|
|
|
|
- |
|
|
|
|
|
source /dev/stdin <<<"$(conda shell.bash hook)"
|
|
|
|
|
conda create --yes --name snowflakes biopython
|
|
|
|
|
conda activate snowflakes
|
|
|
|
|
conda info --envs | grep snowflakes
|
|
|
|
|
conda deactivate
|
|
|
|
|
|
|
|
|
|
# check env has been restored
|
|
|
|
|
- |
|
|
|
|
|
if ! conda info --envs | grep snowflakes; then
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|