|
7 | 7 |
|
8 | 8 | ```json
|
9 | 9 | "features": {
|
10 |
| - "ghcr.io/devcontainers/features/anaconda:1": {} |
| 10 | + "ghcr.io/ran-dall/devcontainer-features/anaconda:1": {} |
11 | 11 | }
|
12 | 12 | ```
|
13 | 13 |
|
|
16 | 16 | | Options Id | Description | Type | Default Value |
|
17 | 17 | |-----|-----|-----|-----|
|
18 | 18 | | version | Select or enter an anaconda version. | string | latest |
|
| 19 | +| useCondaForge | Set conda-forge as the default channel for better package compatibility | boolean | true | |
| 20 | +| installMamba | Install mamba for faster package management | boolean | true | |
| 21 | +| useSystemPackages | Use system package manager on Debian/Ubuntu systems to install Conda | boolean | true | |
| 22 | +| installFullAnaconda | Install full Anaconda distribution instead of minimal Miniconda | boolean | false | |
19 | 23 |
|
20 |
| -## Using Conda |
| 24 | +## Using Conda and Mamba |
21 | 25 |
|
22 |
| -This Feature includes [the `conda` package manager](https://docs.conda.io/projects/conda/en/latest/index.html). Additional packages installed using Conda will be downloaded from Anaconda or another repository if you configure one. To reconfigure Conda in this container to access an alternative repository, please see information on [configuring Conda channels here](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html ). |
| 26 | +This Feature includes [the `conda` package manager](https://docs.conda.io/projects/conda/en/latest/index.html) and optionally [the `mamba` package manager](https://mamba.readthedocs.io/en/latest/), which provides faster dependency resolution and package installation. Additional packages will be downloaded from Anaconda, conda-forge, or another repository if you configure one. |
23 | 27 |
|
24 |
| -Access to the Anaconda repository is covered by the [Anaconda Terms of Service](https://legal.anaconda.com/policies/en/?name=terms-of-service), which may require some organizations to obtain a commercial license from Anaconda. **However**, when used with GitHub Codespaces or GitHub Actions, **all users are permitted** to use the Anaconda Repository through the service, including organizations normally required by Anaconda to obtain a paid license for commercial activities. Note that third-party packages may be licensed by their publishers in ways that impact your intellectual property, and are used at your own risk. |
| 28 | +### Configuration Options |
| 29 | + |
| 30 | +This Feature offers several configuration options: |
| 31 | + |
| 32 | +- **useCondaForge**: Set to `true` (default) to use conda-forge as the default channel, which offers better package compatibility and more permissive licensing. |
| 33 | +- **installMamba**: Set to `true` (default) to install Mamba alongside Conda for faster package management. |
| 34 | +- **useSystemPackages**: Set to `true` (default) to use the system package manager on Debian/Ubuntu systems to install Conda. |
| 35 | +- **installFullAnaconda**: Set to `true` to install the full Anaconda distribution instead of the minimal Miniconda. Defaults to `false`. |
| 36 | + |
| 37 | +### Using Mamba |
| 38 | + |
| 39 | +When Mamba is installed, you can use the following commands and aliases for faster package management: |
| 40 | + |
| 41 | +```bash |
| 42 | +# Use mamba directly |
| 43 | +mamba install package-name |
| 44 | + |
| 45 | +# Use aliases that are automatically set up |
| 46 | +conda-fast install package-name |
| 47 | +cf install package-name |
| 48 | +``` |
| 49 | + |
| 50 | +Mamba uses the same command syntax as conda but resolves dependencies much faster, especially for complex environments. |
| 51 | + |
| 52 | +### Conda Channels |
| 53 | + |
| 54 | +To reconfigure Conda in this container to access alternative repositories, please see information on [configuring Conda channels here](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html). |
| 55 | + |
| 56 | +## Licensing Information |
| 57 | + |
| 58 | +Access to the Anaconda repository is covered by the [Anaconda Terms of Service](https://legal.anaconda.com/policies/en/?name=terms-of-service), which may require some organizations to obtain a commercial license from Anaconda. **However**, when used with GitHub Codespaces or GitHub Actions, **all users are permitted** to use the Anaconda Repository through the service, including organizations normally required by Anaconda to obtain a paid license for commercial activities. |
| 59 | + |
| 60 | +If you've enabled the `useCondaForge` option (default), your container will use conda-forge as the default channel, which has more permissive licensing than the default Anaconda repository. |
| 61 | + |
| 62 | +Note that third-party packages may be licensed by their publishers in ways that impact your intellectual property, and are used at your own risk. |
25 | 63 |
|
26 | 64 | ## Installing a different version of Python
|
27 | 65 |
|
28 | 66 | As covered in the [user FAQ](https://docs.anaconda.com/anaconda/user-guide/faq) for Anaconda, you can install different versions of Python than the one in this image by running the following from a terminal:
|
29 | 67 |
|
30 | 68 | ```bash
|
31 | 69 | conda install python=3.7
|
| 70 | +# Or faster with mamba |
| 71 | +mamba install python=3.7 |
32 | 72 | ```
|
33 | 73 |
|
34 |
| - |
35 | 74 | ## OS Support
|
36 | 75 |
|
37 |
| -This Feature should work on recent versions of Debian/Ubuntu-based distributions with the `apt` package manager installed. |
| 76 | +This Feature should work on recent versions of Debian/Ubuntu-based distributions with the `apt` package manager installed. It also has limited support for RedHat-based systems, Alpine Linux, and openSUSE/SLES. |
38 | 77 |
|
39 | 78 | `bash` is required to execute the `install.sh` script.
|
40 | 79 |
|
41 | 80 |
|
42 | 81 | ---
|
43 | 82 |
|
44 |
| -_Note: This file was auto-generated from the [devcontainer-feature.json](https://github.com/devcontainers/features/blob/main/src/anaconda/devcontainer-feature.json). Add additional notes to a `NOTES.md`._ |
| 83 | +_Note: This file was auto-generated from the [devcontainer-feature.json](https://github.com/ran-dall/devcontainer-features/blob/main/src/anaconda/devcontainer-feature.json). Add additional notes to a `NOTES.md`._ |
0 commit comments