Install MACS3
MACS3 3.0.5 requires Python 3.12 or later. The project tests Python 3.12, 3.13, and 3.14 on Linux and macOS. Windows is not currently supported.
We recommend installing MACS3 in a dedicated virtual environment. The
following commands use python3; check that it refers to a supported Python
version on your system:
python3 --version
python3 -m venv macs3env
source macs3env/bin/activate
If you use Conda, activate a Python 3.12-or-later environment instead of
creating a venv.
Install from PyPI
python -m pip install --upgrade pip
python -m pip install macs3
macs3 --version
To upgrade an existing installation, run
python -m pip install --upgrade macs3 in the environment where MACS3 is
installed.
The PyPI release is a source distribution. Installing it may compile MACS3’s Cython extensions, so you need a working C compiler and Python development headers. On macOS, install the Xcode Command Line Tools. On Linux, install the compiler toolchain and Python headers provided by your distribution.
Install from Bioconda
In a Conda environment configured with the conda-forge and bioconda
channels, install MACS3 with:
conda install macs3
macs3 --version
Bioconda packages may become available after the PyPI release. Check the Bioconda MACS3 package to confirm that version 3.0.5 is available before using this method for the new release; use PyPI if you need 3.0.5 sooner.
Install from source
Clone the repository with its submodules, activate a supported Python environment, and install from the checkout:
git clone --recurse-submodules https://github.com/macs3-project/MACS.git
cd MACS
python -m pip install .
macs3 --version
If you already have a checkout, run git submodule update --init --recursive
before installing. The same python -m pip install . command works after
unpacking a release source archive.
To build a wheel locally instead, install the build frontend and run:
python -m pip install build
python -m build --wheel
The wheel is written to dist/; install it with python -m pip install
followed by its filename.
Dependencies and build requirements
The package installer resolves the runtime dependencies declared in
pyproject.toml: NumPy >=1.25, SciPy >=1.12, pandas >=2.0, AnnData >=0.10,
hmmlearn >=0.3.2, and scikit-learn >=1.3. Source builds use Cython >=3.0,
NumPy >=1.25, and setuptools >=80.0. MACS3’s Cython extension sources use
the .py suffix and are compiled during the build. The cykhash package is
not a dependency of MACS3 3.0.5.
The callvar extension also uses bundled fermi-lite code and the SIMDe
submodule. If you install from a Git checkout, initialize that submodule as
shown above.