Python (possibly optional)

Building MOOSE requires having Python headers (python-devel) and the Python package: packaging available. If you know you have this requirement satisfied, and you do not plan on also using Peacock (next section) you can skip this section.

These requirements are easily installed via Conda.

Follow the steps below depending on your platform to install Mambaforge. If you run into issues during these steps, please visit our Conda Troubleshooting guide. This installation guide relies on the utilization of mamba, an optimized package manager for Conda.

  • Linux Users:

    
    curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh
    bash Mambaforge-Linux-x86_64.sh -b -p ~/mambaforge3
    

  • Macintosh Users with Intel processors:

    
    curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-MacOSX-x86_64.sh
    bash Mambaforge-MacOSX-x86_64.sh -b -p ~/mambaforge3
    

  • Macintosh Users with Apple Silicon processors:

    
    curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-MacOSX-arm64.sh
    bash Mambaforge-MacOSX-arm64.sh -b -p ~/mambaforge3
    

With Mambaforge installed in your home directory, export PATH so that it may be used:


export PATH=$HOME/mambaforge3/bin:$PATH

Now that we can execute mamba, initialize it and then exit the terminal:


mamba init
exit

Upon restarting your terminal, you should see your prompt prefixed with (base). This indicates you are in the base environment, and Conda is ready for operation:


$ (base) ~>

Add INL's public channel to gain access to INL's Conda package library:


conda config --add channels https://conda.software.inl.gov/public
warningwarning:Do not use sudo

If you find yourself using sudo commands while engaging Conda commands... something is not right. The most common reason for needing sudo is due to an improper Conda installation. Conda should be installed to your home directory, without any use of sudo.

Next, install the necessary packaging module:


mamba install packaging

Peacock (optional)

Peacock requires many third party libraries. The easiest way to get these libraries installed is to use our moose-peacock package available from INL's public Conda channel.


conda config --add channels https://conda.software.inl.gov/public
mamba create -n peacock moose-peacock
commentnote

It is safe to ignore a warning about our public channel already among your channel list.

warningwarning:Separate Environments

It is important to create a new environment to contain the libraries necessary to run Peacock. Do not install moose-peacock while inside the moose environment (or any environment with moose-libmesh installed).

Activate the newly created peacock environment:


mamba activate peacock
commentnote

When ever you wish to run Peacock, it will be necessary to activate this environment.