====== Anaconda ====== Anaconda is a software installation and management toolset, designed to exist alongside Python and other software made available by the operating system or [[started:module_basics|other software provision methods]]. It largely replicates the same functionality available from system tools such as **yum**, **apt**, **dpkg** and similar, as well as language level install tools like **pip** and **gem** and the curated software repositories such as CRAN or CPAN. In most cases, the use of Anaconda is //not// strictly necessary - in almost every case the same can be achieved by //other// means, however it has become an easy to use option. * [[#Licensing Problems]] * [[#Alternatives]] * [[#conda-forge]] ---- ===== Licensing Problems ==== **Anaconda is not free** Most users are not aware that the use of Anaconda and the Anaconda software repositories is __not__ entirely free. In particular, access to the software repositories which Anaconda uses, out of the box, in a default configuration are subject to per-user, per-month license fees, if the user, their employer and the use of the software does not meet the licensing conditions Anaconda Inc. stipulate. To be clear, __no new installation of Anaconda on our HPC facilities is permitted__. Whilst the use of Anaconda in the research computing world has traditionally been extensive, recent licensing and litigation issues raised in 2024 amongst the UK FE/HE community have lead us to consider the licensing situation of Anaconda on our HPC systems as too much of a risk. Most other UK Universities are taking the same route, with the software either being heavily restricted or //fully removed//. For a summary of the troublesome licensing situation with Anaconda, see these articles: * https://discuss.scientific-python.org/t/response-to-anaconda-switch-to-paid-plans/1395 * [[https://redresscompliance.com/anaconda-licensing-changes-explained/#:~:text=Key%20Licensing%20Updates&text=Non%2DProfit%20and%20Government%20Entities,exempt%20from%20the%20licensing%20fee.|Anaconda licensing changes explained (Redresscompliance.com)]] * https://www.datacamp.com/blog/navigating-anaconda-licensing * https://www.theregister.com/2024/08/08/anaconda_puts_the_squeeze_on/ * https://ask.cyberinfrastructure.org/t/anaconda-license-situation-at-your-site/4005 Anaconda Inc. released an updated licensing statement after these issues surfaced: * https://www.anaconda.com/blog/update-on-anacondas-terms-of-service-for-academia-and-research However, the updated statement still leaves the situation unclear, and on a shared-use system like our HPC facilities, this leaves the risk that some users may not be in compliance with their updated terms. The legal impact of this affects the entire University (since we have //significantly// more than 200 employees). For this reason, the Newcastle University HPC Steering group, along with our Cyber Security and Licensing experts have determined that **Anaconda must not be used on Comet**. ---- ===== Alternatives ===== The **Comet** HPC facility will __not__ be making Anaconda available, and all existing Anaconda users will be contacted to make them aware that any Anaconda installations must be removed as part of the migration to the new platform. **Warning** Do not attempt to install Anaconda yourself in your HOME or NOBACKUP areas. ---- ==== conda-forge ==== The tools available from **conda-forge** are largely identical to those from Anaconda Inc., with the main difference being that the software repositories the **conda-forge** tool uses are community supported and thus free from the licensing restrictions present in the repositories provided by Anaconda Inc. * https://conda-forge.org/ The tools from **conda-forge** are available on **Comet** as a loadable module: $ module load condaforge The ''conda'' command provided by **conda-forge** functions identically to the same command provided by Anaconda Inc. In most circumstances you should be able to replicate any previous Anaconda environments using the **conda-forge** equivalents. There //may// be some cases where a software package or toolchain is __not__ present in the community **conda-forge** repositories. If you encounter this issue, please contact the RSE team, and we may be able to arrange for that package to be provided by some alternative method. **Warning!** Do not attempt to change the software repository settings of conda-forge to use the license-restricted Anaconda repositories. Any attempt to do so will be seen as possible circumventing of University software licensing policy. At a minimum this will result in the suspension of your HPC Project account, but could also result in further action being taken. === Migrating from Anaconda to conda-forge === Whilst there is no automatic means to //upgrade// an Anaconda environment to one managed by **conda-forge**, there are community provided guides on the steps needed to migrate an existing environment to one which is provisioned by the **conda-forge** software repositories instead: * https://conda-forge.org/docs/user/transitioning_from_defaults/ ---- [[:advanced:software|Back to Advanced Software Topics]]