Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

blog post about anaconda #428

Merged
merged 22 commits into from
Aug 12, 2024
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 54 additions & 0 deletions posts/2024/2024-08-09.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
blogpost: true
date: Aug 09 2024
author: Nabil Freij
category: Information
---

# Anaconda is not "free"

We wanted to inform the wider community about Anaconda and if you are allowed to use it.

Anaconda has specific licences which determine if one is able to use if you work for an organization.
For example, [The Register](https://www.theregister.com/2024/08/08/anaconda_puts_the_squeeze_on/) has reported that:

> Research and academic organizations are just now finding out that they will have to pay for software made by Anaconda, when for years these groups were under the impression it could be used at no cost.
>
> A source who works at a medium-size non-profit academic research institution told The Register about being on the end of a legal demand to purchase a commercial license for the Anaconda-built software they had been using for free.

### So what is free to use?

- `conda` the package installation and environment management software, is free to use by anyone and always has been.

### What is not free to use?

- Anaconda, where conda was first created, generates revenue by charging for access to specific channels containing packages that are curated, built, maintained, and served by Anaconda's engineers on its secure cloud infrastructure.
Anaconda's default channel is one of these.

So using the defaults channel can lead to you becoming legally required to pay Anaconda for the use of `conda` and the defaults channel.

This also applies to `miniconda` as well, as it setups up the defaults channel as well.

### To summarize:

The conda-compatible packages in the default channel and Anaconda Distribution are free to use if:

- Your organization has less than 200 people, or
- Your organization has 200 or more people, but qualifies as an exempt organization in Anaconda's terms of service:

> Students and educational entities may use our free offerings in curriculum-based courses.

[Anaconda themselves summarize this in a really detailed blog post](https://www.anaconda.com/blog/is-conda-free)
nabobalis marked this conversation as resolved.
Show resolved Hide resolved

## What should one do instead?

The answer from our point of view is straightforward.

- Use [miniforge](https://github.com/conda-forge/miniforge) which is a conda distribution setup to use conda-forge which does not have this restriction.
- Never setup or use the defaults channel.
nabobalis marked this conversation as resolved.
Show resolved Hide resolved

## I have anaconda already - What should I do?

Though, you could get rid of the default channel(s) using the `conda config` command as shown [in this Stack Overflow answer about getting switching channels from anaconda to conda-forge](https://stackoverflow.com/a/67708768). This is good for new environments but it doesn't remove what you've got already installed (e.g., `base` environment) and you may be still infringing their ToS.
nabobalis marked this conversation as resolved.
Show resolved Hide resolved

Therefore, a cleanest way would be to uninstall anaconda and install miniforge. You'll need to recreate all your environments, and [this post about migrating from anaconda to miniforge](https://it.martinos.org/help/migrating-anaconda-miniconda-install-to-a-miniforge-install/) details the step to follow. Unfortunately, there's not yet an automated way of doing it.
nabobalis marked this conversation as resolved.
Show resolved Hide resolved
Loading