diff --git a/common.sh b/common.sh index 149d502..89997ae 100644 --- a/common.sh +++ b/common.sh @@ -1,3 +1,3 @@ -BIOCONDA_UTILS_TAG=v2.13.2 -MAMBAFORGE_VER=23.1.0-1 +BIOCONDA_UTILS_TAG=v3.3.0 +MAMBAFORGE_VER=24.3.0-0 MAMBAFORGE_INSTALLATION_DIR="/opt/mambaforge" diff --git a/configure-conda.sh b/configure-conda.sh index b8393c4..5d2bcda 100644 --- a/configure-conda.sh +++ b/configure-conda.sh @@ -21,11 +21,13 @@ then fi conda config --set always_yes yes -conda config --add channels defaults conda config --add channels bioconda conda config --add channels conda-forge +conda config --remove channels defaults || true conda config --set channel_priority strict +# .conda support is pending https://github.com/conda/infrastructure/issues/950 +# conda config --set conda_build.pkg_format 2 if [ ${BIOCONDA_DISABLE_BUILD_PREP:=0} == 0 ]; then conda config --add channels "file://${MAMBAFORGE_INSTALLATION_DIR}/conda-bld" -fi \ No newline at end of file +fi diff --git a/install-and-set-up-conda.sh b/install-and-set-up-conda.sh index 3defe66..8e29135 100644 --- a/install-and-set-up-conda.sh +++ b/install-and-set-up-conda.sh @@ -5,7 +5,6 @@ set -e # - Installs mambaforge to ${HOME}/mambaforge. Version is determined by common.sh, # which is downloaded at runtime. # - Sets channel order and sets strict channel priority -# - Installs mamba into the base env # - Installs bioconda-utils into a "bioconda" env (unless # $BIOCONDA_DISABLE_BUILD_PREP=1). Version is determined by common.sh. # - Sets up local channel to have highest priority (unless $BIOCONDA_DISABLE_BUILD_PREP=1) @@ -44,8 +43,6 @@ if [[ $(uname) == "Darwin" ]]; then sudo chown -R $USER $(dirname $MAMBAFORGE_INSTALLATION_DIR) # conda-forge-ci-setup does some additional setup for Mac. - # Installing bioconda-utils and conda-forge-ci-setup with conda causes dependency conflicts. - # Installing bioconda-utils and conda-forge-ci-setup with mamba works fine. BIOCONDA_ADDITIONAL_INSTALL_PKGS="conda-forge-ci-setup" else mkdir -p $(dirname $MAMBAFORGE_INSTALLATION_DIR) @@ -67,8 +64,6 @@ export PATH="${MAMBAFORGE_INSTALLATION_DIR}/bin:${PATH}" # disable build preparation here because we don't yet have the local channel from conda-build BIOCONDA_DISABLE_BUILD_PREP=1 bash configure-conda.sh -mamba install mamba -y - # By default, for building packages, we install bioconda-utils. However when # testing bioconda-utils itself, we don't want to install a release, in # which case set BIOCONDA_DISABLE_BUILD_PREP to a non-zero value. @@ -78,9 +73,9 @@ if [ ${BIOCONDA_DISABLE_BUILD_PREP:=0} == 0 ]; then source ${MAMBAFORGE_INSTALLATION_DIR}/etc/profile.d/mamba.sh # set up env with all dependencies - mamba create -n bioconda -y --file https://raw.githubusercontent.com/bioconda/bioconda-utils/$BIOCONDA_UTILS_TAG/bioconda_utils/bioconda_utils-requirements.txt $BIOCONDA_ADDITIONAL_INSTALL_PKGS + conda create -n bioconda -y --file https://raw.githubusercontent.com/bioconda/bioconda-utils/$BIOCONDA_UTILS_TAG/bioconda_utils/bioconda_utils-requirements.txt $BIOCONDA_ADDITIONAL_INSTALL_PKGS - mamba activate bioconda + conda activate bioconda # install bioconda-utils itself via pip (this way we don't always have to wait for the conda package to be built before being able to fix things here) pip install git+https://github.com/bioconda/bioconda-utils.git@$BIOCONDA_UTILS_TAG @@ -88,7 +83,9 @@ if [ ${BIOCONDA_DISABLE_BUILD_PREP:=0} == 0 ]; then # Set local channel as highest priority (requires conda-build, which is # installed as a dependency of bioconda-utils) mkdir -p "${MAMBAFORGE_INSTALLATION_DIR}/conda-bld/{noarch,linux-64,osx-64,linux-aarch64,osx-arm64}" - conda index "${MAMBAFORGE_INSTALLATION_DIR}/conda-bld" + # The base installation does not include conda-index, so use "command conda" to run bioconda + # env's "conda index". + command conda index "${MAMBAFORGE_INSTALLATION_DIR}/conda-bld" conda config --add channels "file://${MAMBAFORGE_INSTALLATION_DIR}/conda-bld" fi