Before installing your own Python environment, check if the Python package you are desperately seeking is not already available in an existing Python distribution on the shared interactive Linux servers, or the batch computing clusters you have access to !!
Do not reinvent the wheel and waste shared disk space
module avail [mod_name] to find out the Python versions available, and then module load and conda list to get more information on the available Python packagesspiritx (modules on spirit)): $ module avail -t python python/meso-3.8 python/meso-3.9 python/meso-3.10 python/meso-3.11 jypmce@spiritx1:~$ module avail -l 2>&1 | grep meso anaconda-meso/2022.10 2023/04/21 18:02:35 anaconda-meso/2023.09-0 2024/01/25 15:07:50 pangeo-meso/2023.04.15 2024/10/18 15:11:30 pangeo-meso/2024.01.22 2024/10/29 15:16:33 pangeo-meso/2025.01.24 2025/02/28 15:45:21 python/meso-3.8 2024/10/18 15:12:15 python/meso-3.9 2024/10/18 15:12:01 python/meso-3.10 2024/10/18 15:11:30 python/meso-3.11 2024/10/29 15:16:33 jypmce@spiritx1:~$ module load pangeo-meso/2025.01.24 (pangeo-meso-2025.01.24) jypmce@spiritx1:~$ which python /net/nfs/tools/u20/Python/miniforge_24.11.3-0/envs/pangeo-meso-2025.01.24/bin/python (pangeo-meso-2025.01.24) jypmce@spiritx1:~$ conda list | grep cartopy cartopy 0.24.0 py312hf9745cd_0 conda-forge
In the case when:
but this Python environment is not directly available on the notebook server (i.e. not listed in the kernels pull-down menu), you should follow the using a non-standard kernel instructions, rather than starting your own local notebook server (on this multi-user computer)
Miniconda3 or Anaconda3 because it is not provided by the Anaconda company and is completely freeMiconconda3 based installation can have a look at the old JYP steps for installing Miniconda3 pageconda command/executable available on your computer, and you can then use this conda executable to create new and independent Python distributions, or select an existing distribution.activate this environment in order to use itcdatm_py3 (assuming it exists) in a bash shell $ source /path_to_miniforge/etc/profile.d/conda.sh $ which conda /path_to_miniforge/condabin/conda $ conda env list [...] cdatm_py3 /path_to_miniforge/envs/cdatm_py3 some_other_env /path_to_miniforge/envs/some_other_env $ conda activate cdatm_py3 (cdatm_py3) $ which python /path_to_miniforge/envs/cdatm_py3/bin/python
base (it also used to be called root). Note that the python binary of the special base environment is not located in the same directory hierarchy as the python of the other environments (i.e. there is no envs/ subdirectory$ conda activate base (base) $ which python /path_to_miniforge/bin/python
~/miniforge3 on Linux). Do not use the default installation location, if you want to avoid disk space related problems (disk full, quota exceeded, …) during the initial installation or later~/.conda on Linux)Note: some of the steps below are adapted from the Windows sections of Installing Miniconda
Miniforge3 25.3.1-0 installer is based on Python 3.12.11 and Conda 25.3.1C:\Scratch\your_login or whatever you use as a local Scratch folderStart ⇒ W ⇒ Windows PowerShell ⇒ Windows PowerShellcurl to download the latest installer (71 Mb as of October 2025): PS C:\> cd C:\Scratch\your_login PS C:\Scratch\your_login> curl https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Windows-x86_64.exe -o miniforge3.exe PS C:\Scratch\your_login> dir miniforge3.exe [...] -a---- 17/09/2025 17:02 73476264 miniforge3.exe
/path_to_miniforge3/ in the Linux sections belowC:\Users\your_login or <some_disk_different_from_c>:\Users\<your_login>), if you want to be able to easily create backups or your home folder, without backing up thousands of files related to your Python environments…C:\Utils\miniforge3_2025-10 (if we start installing in October 2025)PS C:\Scratch\your_login> .\miniforge3.exe
C:\Utils\miniforge3_2025-10Start menuC:\Utils\miniforge3_2025-10 folderStart menu:Start⇒M⇒Miniforge3 menu:Miniforge Prompt shortcutMiniforge Prompt shortcut each time we need to use a conda or python executable related to this installation of miniforge3Miniforge prompts will open in a modern (and highly configurable) Windows terminalPS C:\Scratch\your_login> del miniforge3.exe
conda and python run correctlyMiniforge prompt will automatically initialize the Python (base) environment installed with the Miniforge3 installer.Start⇒M⇒Miniforge3 ⇒ Miniforge Prompt(base) C:\Users\your_login>where.exe conda C:\Utils\miniforge3_2025-10\Library\bin\conda.bat C:\Utils\miniforge3_2025-10\Scripts\conda.exe C:\Utils\miniforge3_2025-10\condabin\conda.bat (base) C:\Users\your_login>conda --version conda 25.3.1 (base) C:\Users\your_login>conda env list # conda environments: # base * C:\Utils\miniforge3_2025-10 (base) C:\Users\your_login>conda list # packages in environment at C:\Utils\miniforge3_2025-10: # # Name Version Build Channel [...] conda 25.3.1 py312h2e8e312_1 conda-forge conda-libmamba-solver 25.3.0 pyhd8ed1ab_0 conda-forge [...] libmamba 2.1.1 h00a3e12_0 conda-forge libmambapy 2.1.1 py312h259b449_0 conda-forge [...] mamba 2.1.1 hbfb34a1_0 conda-forge [...] python 3.12.11 h3f84c4b_0_cpython conda-forge [...] (base) C:\Users\your_login>python Python 3.12.11 | packaged by conda-forge | (main, Jun 4 2025, 14:29:09) [MSC v.1943 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import sys, pprint >>> pprint.pprint(sys.path) ['', 'C:\\Utils\\miniforge3_2025-10\\python312.zip', 'C:\\Utils\\miniforge3_2025-10\\DLLs', 'C:\\Utils\\miniforge3_2025-10\\Lib', 'C:\\Utils\\miniforge3_2025-10', 'C:\\Utils\\miniforge3_2025-10\\Lib\\site-packages'] >>> ^Z
conda-forge is the default and only channel that conda will use to update the newly installed base environment, and future environments--get channels command should only mention 'conda-forge'(base) C:\Users\jypeter>conda config --get channels --add channels 'conda-forge' # lowest priority
.condarc configuration file left over from a previous conda installation. Depending on its content, you may have to remove or edit the .condarc file, or it may be OK to leave it unchangedcmd terminal, and there is NO existing .condarc file(base) C:\Users\your_login>more %HOMEPATH%\.condarc Impossible d’accéder au fichier C:\Users\your_login\.condarc
'conda-forge' channel we want(base) PS C:\Users\your_login> more $HOME\.condarc channels: - conda-forge channel_priority: strict
conda commands will work the same way on all Operating Systems (Windows and Linux-like).condarc configuration file, it is located in your Windows home folderC:\Users\your_login\.condarccmd: more %HOMEPATH%\.condarcmore $HOME\.condarcBy Linux-like, we mean:
$ cd /home/scratch01/$USER$ mkdir /homedata/$USER/Scratch $ cd /homedata/$USER/Scratch
wget to download the latest installer (138 Mb as of 22 Mar 2024):$ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh $ ls -lh Miniconda3-latest-Linux-x86_64.sh [...] 138M Feb 27 20:40 Miniconda3-latest-Linux-x86_64.sh
We assume below that we are in the directory where we have downloaded the installer
/path_to_miniconda3//home/share/unix_files/cdat/miniconda3_2024-03/homedata/$USER/miniconda3_2024-03$ bash Miniconda3-latest-Linux-x86_64.sh<SPACE> several times…) and accept it/path_to_miniconda3/$HOME/miniconda3no to the question Do you wish to update your shell profile to automatically initialize conda?.no, you can apparently:conda init --reverse $SHELLconda config --set auto_activate_base falseminiconda3 directory size is 647 Mb (as of March 2024).$ du -sh miniconda3_2024-03 647M miniconda3_2024-03 $ du -sh miniconda3_2024-03/* 47M miniconda3_2024-03/bin 16K miniconda3_2024-03/cmake 8.0K miniconda3_2024-03/compiler_compat 32M miniconda3_2024-03/_conda 8.0K miniconda3_2024-03/condabin 976K miniconda3_2024-03/conda-meta 4.0K miniconda3_2024-03/envs 28K miniconda3_2024-03/etc 18M miniconda3_2024-03/include 317M miniconda3_2024-03/lib 92K miniconda3_2024-03/LICENSE.txt 1.1M miniconda3_2024-03/man 232M miniconda3_2024-03/pkgs 396K miniconda3_2024-03/sbin 1.5M miniconda3_2024-03/share 12K miniconda3_2024-03/shell 8.0K miniconda3_2024-03/ssl 8.0K miniconda3_2024-03/x86_64-conda_cos7-linux-gnu 8.0K miniconda3_2024-03/x86_64-conda-linux-gnu
source /some_path/conda_init_scriptconda activateconda activate basesource /path_to_miniconda3/etc/profile.d/conda.shsource /homedata/jypmce/miniconda3_2024-03/etc/profile.d/conda.shsource /path_to_miniconda3/etc/profile.d/conda.cshsource /home/share/unix_files/cdat/miniconda3_2024-03/etc/profile.d/conda.cshconda command, and use it to initialize the base environment$ which conda /homedata/jypmce/miniconda3_2024-03/condabin/conda $ which python /usr/bin/python $ conda activate base (base) $ which conda /homedata/jypmce/miniconda3_2024-03/bin/conda (base) $ which python /homedata/jypmce/miniconda3_2024-03/bin/python (base) $ conda deactivate $ which conda /homedata/jypmce/miniconda3_2024-03/condabin/conda $ which python /usr/bin/python
$ rm Miniconda3-latest-Linux-x86_64.shconda will probably work fine with the default settings if you create simple new environments with just one package and its dependencies.conda works much better and faster since the end of 2023 (conda versions starting at 23.10), now that it is using the mamba solver instead of the default solver.conda --version version to determine which version you are using$ conda --version conda 24.5.0
conda-forge, with complex dependencies, and we may run into dependency problems when combining packages coming from both conda and conda-forge.conda to always use conda-forge, and completely update Miniconda3 itself with packages coming only from conda-forgeconda (>= 23.10), and you have followed all the steps below, in order to use only conda-forge packages, and there are still some package installation problems, try to install and use mamba, as a drop-in replacement of condaconda used libmamba, we had to use mamba (instead of conda) for dealing with our complex Python environments:
The following steps will make sure that we only get packages from conda-forge (same thing as using the -c conda-forge option) by default, unless the requested packages really do not exist on conda-forge. More details in Managing channels
$ cat ~/.condarc # On Windows use: cat $HOME\.condarc cat: /home/jypmce/.condarc: No such file or directory $ conda config --get channels $ conda config --prepend channels conda-forge $ conda config --set channel_priority strict $ conda config --get channels --add channels 'defaults' # lowest priority --add channels 'conda-forge' # highest priority $ cat ~/.condarc # On Windows use: cat $HOME\.condarc channels: - conda-forge - defaults channel_priority: strict
Before you go further, do not forget to update conda at least once in order to take all the changes above into account!
mamba installationmamba if you are sure that you will need some features that are not already provided by conda (e.g. mamba repoquery)mamba is a fast, robust, and cross-platform package manager […] fully compatible with conda packages, and supports most of conda’s commands
mamba is used to manage environments, and has to be installed in the base environment (i.e. in the same environment as conda)!conda to use conda-forge by defaultmamba:conda install -n base mambamamba repoqueryconda update -n base --all, (review) and accept the changesbase (Miniconda3 itself) and the other Python environments installed with the conda executable provided by the base environment are all independent, and can be updated independentlybase environment at least once in order to replace all of its packages by their equivalent conda-forge packages
conda command.$ conda update -n base --all [...] # All requested packages already installed. (base) $ conda update -n base conda [...] # All requested packages already installed.
miniconda3 directory size grew from 763 Mb to 1.6 Gb, and we have not installed any custom Python environment yet! This is the reason why you should install Miniconda3 on a (preferably non backed up) disk where you have enough free space$ du -sh /homedata/jypmce/miniconda3_2024-03 736M /homedata/jypmce/miniconda3_2024-03 [... update] $ du -sh /homedata/jypmce/miniconda3_2024-03 1.6G /homedata/jypmce/miniconda3_2024-03
We have to completely update Miniconda3 at least once after installing Miniconda3 and making conda-forge the highest priority channel
conda$ conda --version conda 24.1.2
$ conda update -n base --all
Channels:
- conda-forge
- defaults
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /homedata/jypmce/miniconda3_2024-03
The following packages will be downloaded:
package | build
---------------------------|-----------------
conda-24.3.0 | py312h7900ff3_0 1.1 MB conda-forge
conda-libmamba-solver-24.1.0| pyhd8ed1ab_0 40 KB conda-forge
python-3.12.2 |hab00c5b_0_cpython 30.8 MB conda-forge
[...]
The following NEW packages will be INSTALLED:
[...]
The following packages will be UPDATED:
[...]
conda pkgs/main::conda-24.1.2-py312h06a4308~ --> conda-forge::conda-24.3.0-py312h7900ff3_0
[...]
The following packages will be SUPERSEDED by a higher-priority channel:
[...]
Proceed ([y]/n)? y
[...]
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
conda and python. Note that (almost) all the packages should now specify that they are provided by conda-forge$ conda list -n base [...] conda 24.3.0 py312h7900ff3_0 conda-forge conda-libmamba-solver 24.1.0 pyhd8ed1ab_0 conda-forge [...] python 3.12.2 hab00c5b_0_cpython conda-forge [...]
conda-forge$ conda list -n base | grep -v conda-forge # Name Version Build Channel libedit 3.1.20230828 h5eee18b_0 libffi 3.4.4 h6a678d5_0 xz 5.4.5 h5eee18b_0
conda-forge.anaconda channel were more recent than the same packages provided by the conda-forge channel when the packages were updated
It seems safe to reclaim some disk space by cleaning up the initial (base) installation, when no other (shared) environments have been installed yet
Use cleaning with caution after installing other environments (besides base), especially environments shared by several users. But it should not break your installation
conda clean --all-n option to specify an environment name, because clean will Remove unused packages and caches shared by all the environmentsclean command will mostly deal with the content of the /path_to_miniconda/pkgs/ directory(base) $ conda clean --all Will remove 154 (180.9 MB) tarball(s). Proceed ([y]/n)? y Will remove 1 index cache(s). Proceed ([y]/n)? y Will remove 74 (378.0 MB) package(s). Proceed ([y]/n)? y There are no tempfile(s) to remove. There are no logfile(s) to remove. (base) $ du -sh /homedata/jypmce/miniconda3_2024-03 457M /homedata/jypmce/miniconda3_2024-03
conda clean --all even in a multi-user installation with several environments, if you don't use the -f option-f/--force-pkgs-dirs documentation specifies WARNING: This will break environments with packages installed using symlinks back to the package cache.PowerShell terminal with: Start⇒ M ⇒ Miniconda3 ⇒ Anaconda Powershell Promptbase environment will be activated by defaultconda activate name_of_the_environment_you_want
TODO
menuinst in order to directly initialize an existing environment (different from base) from the Start menu and from a Windows Terminal
When you open a terminal, your shell needs to know where to find the conda command used to initialize an environment, or switch between existing environments. This can be configured in your shell configuration files (.bashrc, .cshrc, …)
You were asked the following question when installing Miniconda3: Do you wish to update your shell profile to automatically initialize conda? [yes|no]
conda and the newly installed python are probably directly available when you open a new terminal.conda init --reverse $SHELLconda config --set auto_activate_base false~/.bashrcsource /path_to_miniconda3/etc/profile.d/conda.sh alias pynit='conda activate base'
source /homedata/jypmce/miniconda3_2024-03/etc/profile.d/conda.sh alias pynit='conda activate base'
~/.cshrcsource /path_to_miniconda3/etc/profile.d/conda.csh'' alias pynit 'conda activate base'
source /home/share/unix_files/cdat/miniconda3_2024-03/etc/profile.d/conda.csh alias pynit 'conda activate base'
pynit in any (new) terminal you open, when you need to use Pythonmy_power_env, you can update the pynit alias to initialize this environment instead of the base environment (e.g. conda activate my_power_env)pynit!We need to be extra-careful in the case of python environments maintained by a single user, but used by several users, in order not to break anything
We could use the same configuration file as in the single-user case, but it is more efficient to have the users source an intermediate initialization file. This intermediate init file will:
pynit ⇒ initialize the base environment (or another default environment chosen by the central maintainer)wp ⇒ which pythonwconda ⇒ which pythonln -s) to point from the unchanging central initialization file name to the latest initialization file./home/share/unix_files/cdat/conda_init_files/:$ ls -l -rw-r--r-- Jun 14 16:37 conda3_jyp_2024-03.csh -rw-r--r-- Jun 14 17:48 conda3_jyp_2024-03.sh lrwxrwxrwx Jun 17 15:56 conda3_jyp_latest.csh -> conda3_jyp_2024-03.csh lrwxrwxrwx Jun 17 15:57 conda3_jyp_latest.sh -> conda3_jyp_2024-03.sh
bash users should add to their ~/.bashrc file something likesource /some_path_accessible_by_all_users/shared_conda_init_file.shshared_conda_init_file.sh file looking like conda3_jyp_2024-03.sh.txt~/.bashrc: source /home/share/unix_files/cdat/conda_init_files/conda3_jyp_latest.shconda3_jyp_latest.sh is a link to the latest version of the init file,/home/share/unix_files/cdat/conda_init_files/conda3_jyp_2024-03.shspiritx and spirit:spiritx are accessible in read-only mode on spiritspiritx, but they can also be used on spirit, even if the remote disks access will add some latency~/.bashrc: source /homedata/jypmce/conda_init_files/conda3_jyp_spiritx_latest.shconda3_jyp_spiritx_latest.sh is a link to the latest version of the init file,/homedata/jypmce/conda_init_files/conda3_jyp_spiritx_2024-03.shtcsh users should add to their ~/.cshrc file something likesource /some_path_accessible_by_all_users/shared_conda_init_file.cshshared_conda_init_file.csh file looking like conda3_jyp_2024-03.csh.txt~/.cshrc: source /home/share/unix_files/cdat/conda_init_files/conda3_jyp_latest.cshconda3_jyp_latest.csh is a link to the latest version of the init file,/home/share/unix_files/cdat/conda_init_files/conda3_jyp_2024-03.cshconda is installed (in the base environment provided by Miniconda3), configured and updated, you can use it to create a new environment with the packages that you (or other users, in a shared environment) needxcdat environment
⇒ Move this section somewhere else?
conda install and what is described in Easily creating shortcuts with the powershell_shortcut_miniconda and console_shortcut_miniconda packages, and can this be replicated with menuinst ?menuinst+Add Windows Terminal profile option/path_to_miniconda/pkgs directoryconda new features, etc…This is just a subset of some of the commands, and a subset of their options! For a complete reference, use the official conda website
conda -hconda command --help: help for a specific commandconda --versionconda infoconda config --showconda env listconda info --envs(base) $ conda env list # conda environments: # base * /homedata/jypmce/miniconda3_2024-03
conda env list) or deactivate, in order to go back to the default Pythonconda activate existing_environmentconda activate (without specifying an environment name) will activate the base Miniconda3 environmentconda deactivatewhich python to determine where is the current python executable you are using is(base) $ which python /homedata/jypmce/miniconda3_2024-03/bin/python (base) $ conda deactivate $ which python /usr/bin/python
(base) PS C:\> where.exe conda C:\Utils\miniconda3_2024-03\Library\bin\conda.bat C:\Utils\miniconda3_2024-03\Scripts\conda.exe C:\Utils\miniconda3_2024-03\condabin\conda.bat (base) PS C:\> where.exe python C:\Utils\miniconda3_2024-03\python.exe C:\Users\jypeter\AppData\Local\Microsoft\WindowsApps\python.exe (base) PS C:\Users\jypeter> conda deactivate PS C:\> where.exe conda C:\Utils\miniconda3_2024-03\condabin\conda.bat PS C:\> where.exe python C:\Users\jypeter\AppData\Local\Microsoft\WindowsApps\python.exe
4.6, you had to type source activate existing_environment and source deactivateconda-forge, pip)conda list [-n existing_environment]conda list [-n existing_environment] full_or_partial_name (base) $ conda list libmamba # Name Version Build Channel conda-libmamba-solver 24.1.0 pyhd8ed1ab_0 conda-forge libmamba 1.5.8 had39da4_0 conda-forge libmambapy 1.5.8 py312hd9e9ff6_0 conda-forge (base) $ conda list lib _libgcc_mutex 0.1 conda_forge conda-forge conda-libmamba-solver 24.1.0 pyhd8ed1ab_0 conda-forge [...] urllib3 2.2.2 pyhd8ed1ab_1 conda-forge zlib 1.3.1 h4ab18f5_1 conda-forge
conda create -n new_environment_name package1 package2 packageNconda remove -n crap_environment --allcrap_environment and the crap_environment environment itselfconda instead of pip or mamba, if it is available on a conda channelconda search package_exact_nameconda search '*package_partial_name*'search with wildcards fails in a tcsh shell, as of April 2024 (CSH install/search fail with '*' variable in an argument)conda search package_exact_name --infomamba -n target_environment to make changes in another environment than the active oneconda install package1 package2 packageNconda should already be configured to use conda-forge by default if you have read this page carefully-c channel_url_or_alias to install from a specific channelconda remove package1 package2 packageNconda uninstall package1 package2 packageNpip commands (only if the package is not available in conda!)pip install packagepip uninstall packageconda update -n existing_environment installed_packageconda package (not the full Miniconda3 base environment) in the base environmentconda update -n base condaconda features are detailed in the conda Blogpip command (only if the package is not available in conda!)pip install --upgrade packageconda update -n existing_environment --allconda install -n existing_environment_name package_name. This file does not specify the packages' version and their dependencies and can be used later to easily reproduce an environment (using the latest available version of the requested packages)conda export -n existing_environment_name --format yml --from-history -f some_path/existing_environment_yyyy-mm-dd.ymlconda export -n base --format yml --from-history -f C:\Users\your_login\Desktop\base_yyyy-mm-dd.ymlconda env create -n existing_environment_clone -f some_path/existing_environment_yyyy-mm-dd.ymlpip WARNING!conda export will only export information about packages installed with conda install. You should also check if you have installed packages with pip in your environment, and write it down…(base) > conda list -n test_env | grep pypi sbck 1.4.0 pypi_0 pypi xsbck 1.0.0 pypi_0 pypi (base) > conda list -n test_env | grep pypi > some_path/test_env_pypi_yyyy-mm-dd.txt
(base) PS C:\> conda list -n test_env | findstr pypi brotli 1.1.0 pypi_0 pypi (base) PS C:\> conda list -n test_env | findstr pypi > C:\Users\your_login\Desktop\test_env_pypi_yyyy-mm-dd.txt
mamba repoquerymamba repoquery currently only works in the currently active environmentmamba repoquery depends packagemamba repoquery whoneeds packagetqdm packageconda needs tqdm to display package download and installation progress, and the base dependencies of tqdm are colorama, and of course python>mamba repoquery whoneeds --pretty tqdm tqdm └─ conda[24.5.0] >mamba repoquery depends --pretty tqdm tqdm[4.66.4] ├─ colorama[0.4.6] └─ python[3.12.3]
tqdm needs also need packages, and so on…>mamba repoquery depends --tree tqdm tqdm[4.66.4] ├─ colorama[0.4.6] │ └─ python[3.12.3] │ ├─ bzip2[1.0.8] │ │ └─ libgcc-ng[14.1.0] │ │ ├─ _libgcc_mutex[0.1] │ │ └─ _openmp_mutex[4.5] │ │ ├─ _libgcc_mutex already visited │ │ └─ libgomp[14.1.0] │ │ └─ _libgcc_mutex already visited │ ├─ libgcc-ng already visited │ ├─ ld_impl_linux-64[2.40] │ ├─ libexpat[2.6.2] │ │ └─ libgcc-ng already visited [...]
conda doctorconda doctor does not do much yet, and not necessarily in a useful way, but this will hopefully improve over time!conda doctor -n base>conda doctor -n base Environment Health Report for: /home/share/unix_files/cdat/miniconda3_2024-03 Altered Files: python-3.12.3-hab00c5b_0_cpython: 1 Environment listed in environments.txt file: ✅ Missing Files: ✅ There are no packages with missing files.
conda does not automatically clean the content of the /path_to_miniconda/pkgs directory and the size of /path_to_miniconda/ will keep on growing, as you add new environments, or update existing ones
You can get the current list of installed packages with conda list -n existing_environment, but it may also be useful to know in which order the packages were installed:
conda list -n existing_environment --revisions: display exactly what was installed and when (including the updates, and automatic dependencies installation)RR revision number with: conda install -n existing_environment --revision RR/path_to_miniconda/conda-meta/history installation log files.base history file: /path_to_miniconda/conda-meta/historyexisting_environment history file: /path_to_miniconda/envs/existing_environment/conda-meta/historybase environment:$egrep -e 'cmd:' -e '==>' /home/share/unix_files/cdat/miniconda3_2024-03/conda-meta/history ==> 2024-02-23 18:39:23 <== # cmd: constructor /tmp/tmp.4um5tGKcqW/miniconda3/ --output-dir /tmp/tmp.4um5tGKcqW ==> 2024-03-27 16:13:08 <== # cmd: /home/share/unix_files/cdat/miniconda3_2024-03/bin/conda update -n base --all [ ... ] ==> 2025-07-24 17:10:51 <== # cmd: /home/share/unix_files/cdat/miniconda3_2024-03/bin/conda update -n base --all ==> 2025-07-28 17:05:44 <== # cmd: /home/share/unix_files/cdat/miniconda3_2024-03/bin/conda update -n base --all
base environment is available):$ egrep -e 'cmd:' -e '==>' /home/share/unix_files/cdat/miniconda3_2024-03/envs/bauer_env/conda-meta/history ==> 2024-06-18 11:16:12 <== # cmd: /home/share/unix_files/cdat/miniconda3_2024-03/bin/conda create -n bauer_env xcdat ==> 2024-06-18 11:25:14 <== # cmd: /home/share/unix_files/cdat/miniconda3_2024-03/bin/conda install cartopy cmocean [ ... lots of extra packages and updates ... ] # cmd: /home/share/unix_files/cdat/miniconda3_2024-03/bin/conda update -n bauer_env --all numpy<2.3 ==> 2025-07-29 16:18:44 <== # cmd: /home/share/unix_files/cdat/miniconda3_2024-03/bin/conda install -n bauer_env rpy2
conda search command uses the MatchSpec formatconda install and conda search probably use the same syntax== (exact version) is different from = (“fuzzy” value), which can be confusing$ conda search zlib==1.2 No match found for: zlib==1.2. Search: *zlib*==1.2 PackagesNotFoundError: The following packages are not available from current channels: - zlib==1.2 $ conda search zlib=1.2 # Name Version Build Channel zlib 1.2.8 0 conda-forge zlib 1.2.8 1 conda-forge [...] zlib 1.2.13 h5eee18b_1 pkgs/main zlib 1.2.13 hd590300_5 conda-forge $ conda search zlib==1.2.12 zlib 1.2.12 h166bdaf_0 conda-forge [...] zlib 1.2.12 h7f8727e_2 pkgs/main
Miniforge3 can be removed like a regular Windows application
Start ⇒ Settings ⇒ Apps ⇒ Apps & featuresMiniforge3 some_version_informationUninstall and follow the instructions displayed by the uninstaller windowMiniforge3 shortcuts from the Start MenuC:\Users\your_login\.condarc
There is always room for improvement, and this is is some kind of TODO section
conda-which has to be (obviously) installed in the base environment
[ PMIP3 Wiki Home ] - [ Help! ] - [ Wiki syntax ]