-
-
Notifications
You must be signed in to change notification settings - Fork 271
/
introduction.rst
132 lines (89 loc) · 5.15 KB
/
introduction.rst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
.. conda-forge documentation primary file, created by
sphinx-quickstart on Wed Jun 1 01:44:13 2016.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
A brief introduction
====================
Why conda-forge?
----------------
The conda team, from `Anaconda, Inc. <https://anaconda.org/>`__, packages a multitude of packages and provides them to all users free of charge in their ``default`` channel.
But what if a package you are looking for is not in the default channel?
In the past users only had the option to create an `Anaconda Cloud <https://anaconda.org/>`__ account and create their own channel.
This came with a list of disadvantages:
- Locating packages was difficult due to them being scattered over many channels.
- Combining packages across channels was not always possible due to binary incompatibilities.
- Packages were only available for architectures the developer was interested in or had access to.
- Channels were often abandoned, updating required locating new channels.
conda-forge is a community effort that tackles these issues:
- All packages are shared in a single channel named ``conda-forge``.
- Care is taken that all packages are up-to-date.
- Common standards ensure that all packages have compatible versions.
- By default, we build packages for macOS, Linux AMD64 and Windows AMD64.
- Many packages are updated by multiple maintainers with an easy option to become a maintainer.
- An active core developer team is trying to also maintain abandoned packages.
How can I install packages from conda-forge?
--------------------------------------------
Using conda-forge is easy!
- Make sure you have ``conda >=4.9``.
.. code-block:: bash
conda --version
conda update conda
- Add ``conda-forge`` as the highest priority channel.
.. code-block:: bash
conda config --add channels conda-forge
- Activate ``strict`` channel priority (``strict`` will be activated by default in conda 5.0).
.. code-block:: bash
conda config --set channel_priority strict
From now on using ``conda install <package-name>`` will also find packages in our conda-forge channels.
.. note::
In addition to the channel priority,
we recommend always installing your packages inside a new environment instead of the ``base`` (formerly known as ``root``) environment,
and we also recommend the use of ``miniconda`` instead of the Anaconda Distribution.
Using environments make it easier to debug problems with packages and ensure the stability of your ``base`` environment.
Avoiding the Anaconda Distribution reduces chances of unsolvable/conflicting installations, it is also a smaller download.
.. note::
Please be aware that the order of your conda package channels is important, especially when you combine conda-forge with other channels, e.g. ``bioconda``.
.. note::
`Miniforge <https://github.com/conda-forge/miniforge>`__ is a community
effort to provide Miniconda-like installers, with the added feature that
conda-forge is the default channel.
For certain platforms (such as ARMv8 64-bit, formally known as `aarch64`)
Anaconda, Inc. does not provide any Miniconda installers, however Miniforge
does.
Miniforge installers are available here: https://github.com/conda-forge/miniforge/#download
Please refer to :ref:`multiple_channels` for pitfalls and more information.
Can I contribute packages to conda-forge?
-----------------------------------------
Anyone can contribute packages to the ``conda-forge`` channel.
You don't have to be the upstream maintainer of a package in order to contribute it to ``conda-forge``.
To learn how to contribute your first package read `the staging process <https://conda-forge.org/docs/maintainer/adding_pkgs.html#the-staging-process>`_.
How can I give credit to conda-forge?
-----------------------------------------
If you'd like to credit ``conda-forge`` in your work, please cite our `Zenodo entry <https://doi.org/10.5281/zenodo.4774216>`_. This citation is
::
conda-forge community. (2015). The conda-forge Project: Community-based
Software Distribution Built on the conda Package Format and Ecosystem.
Zenodo. http://doi.org/10.5281/zenodo.4774216
or in `bibtex` it is
::
@misc{conda_forge_community_2015_4774216,
author = {conda-forge community},
title = {{The conda-forge Project: Community-based Software
Distribution Built on the conda Package Format and
Ecosystem}},
month = jul,
year = 2015,
publisher = {Zenodo},
doi = {10.5281/zenodo.4774216},
url = {https://doi.org/10.5281/zenodo.4774216}
}
Display conda-forge packages in Anaconda Navigator
--------------------------------------------------
#. Open **Anaconda Navigator** by running ``anaconda-navigator``
#. Go to the **Environments** tab.
#. Click the **Channels** button.
#. Click the **Add** button.
#. Enter the channel url: https://conda.anaconda.org/conda-forge/
#. Press the **Enter key** on your keyboard.
#. Click the **Update channels** button.
From now on, whenever the **package filter** is set to **All** on the Environments tab, all conda-forge packages will be displayed.