Skip to content

Commit

Permalink
Modernize Conda-Forge Guidance
Browse files Browse the repository at this point in the history
In user and developer section.
Use miniforge, rely on mamba for solvers, avoid any use of
default (anaconda) repos for users with firewall rules (e.g., FNAL),
where even though we don't use those repos the tools error out on
the first failed query.
  • Loading branch information
ax3l committed Jan 24, 2025
1 parent 8a85f7f commit bed76ed
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 23 deletions.
19 changes: 9 additions & 10 deletions docs/source/install/dependencies.rst
Original file line number Diff line number Diff line change
Expand Up @@ -45,27 +45,26 @@ For all other systems, we recommend to use a **package dependency manager**:
Pick *one* of the installation methods below to install all dependencies for ImpactX development in a consistent manner.


Conda (Linux/macOS/Windows)
---------------------------
Conda-Forge (Linux/macOS/Windows)
---------------------------------

`Conda <https://conda.io>`__/`Mamba <https://mamba.readthedocs.io>`__ are cross-compatible, user-level package managers.
`Conda-Forge <https://conda-forge.org/download/>`__ is a repository for cross-compatible, user-level packages.

.. tip::

We recommend to configure your conda to use the faster ``libmamba`` `dependency solver <https://www.anaconda.com/blog/a-faster-conda-for-a-growing-community>`__.
We recommend to deactivate that conda self-activates its ``base`` environment.
This `avoids interference with the system and other package managers <https://collegeville.github.io/CW20/WorkshopResources/WhitePapers/huebl-working-with-multiple-pkg-mgrs.pdf>`__.

.. code-block:: bash
conda update -y -n base conda
conda install -y -n base conda-libmamba-solver
conda config --set solver libmamba
conda config --set auto_activate_base false
We recommend to deactivate that conda self-activates its ``base`` environment.
This `avoids interference with the system and other package managers <https://collegeville.github.io/CW20/WorkshopResources/WhitePapers/huebl-working-with-multiple-pkg-mgrs.pdf>`__.
In order to make sure that the conda configuration uses ``conda-forge`` as the only channel, which will help avoid issues with blocked ``defaults`` or ``anaconda`` repositories, please set the following configurations:

.. code-block:: bash
conda config --set auto_activate_base false
conda config --add channels conda-forge
conda config --set channel_priority strict
.. tab-set::

Expand Down
25 changes: 12 additions & 13 deletions docs/source/install/users.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,36 +37,35 @@ If want to use ImpactX on a specific high-performance computing (HPC) systems, j

.. image:: conda.svg

Using the Conda Package
-----------------------
Using the Conda-Forge Package
-----------------------------

A package for ImpactX is available via the `Conda <https://conda.io>`_ package manager.
A package for ImpactX is available via `Conda-Forge <https://conda-forge.org/download/>`__.

.. tip::

We recommend to configure your conda to use the faster ``libmamba`` `dependency solver <https://www.anaconda.com/blog/a-faster-conda-for-a-growing-community>`__.
We recommend to deactivate that conda self-activates its ``base`` environment.
This `avoids interference with the system and other package managers <https://collegeville.github.io/CW20/WorkshopResources/WhitePapers/huebl-working-with-multiple-pkg-mgrs.pdf>`__.

.. code-block:: bash
conda update -y -n base conda
conda install -y -n base conda-libmamba-solver
conda config --set solver libmamba
conda config --set auto_activate_base false
We recommend to deactivate that conda self-activates its ``base`` environment.
This `avoids interference with the system and other package managers <https://collegeville.github.io/CW20/WorkshopResources/WhitePapers/huebl-working-with-multiple-pkg-mgrs.pdf>`__.
In order to make sure that the conda configuration uses ``conda-forge`` as the only channel, which will help avoid issues with blocked ``defaults`` or ``anaconda`` repositories, please set the following configurations:

.. code-block:: bash
conda config --set auto_activate_base false
conda config --add channels conda-forge
conda config --set channel_priority strict
.. code-block:: bash
conda create -n impactx -c conda-forge impactx
conda activate impactx
mamba create -n impactx -c conda-forge impactx
mamba activate impactx
.. note::

The ``impactx`` `conda package <https://anaconda.org/conda-forge/impactx>`__ does not yet provide GPU support.
The ``impactx`` package on conda-forge does not yet provide `GPU support <https://github.com/conda-forge/impactx-feedstock/issues/4>`__.


.. _install-spack:
Expand Down

0 comments on commit bed76ed

Please sign in to comment.