Installation Overview¶
CACE currently supports two primary methods of installation: using Nix and the Python-only method.
Nix (Recommended)¶
Nix is a build system for Linux and macOS allowing for cachable and reproducible builds, and is the primary build system for CACE.
Compared to the Docker method, Nix offers:
Native Execution on macOS: CACE is built natively for both Intel and Apple Silicon-based Macs, unlike Docker which uses a Virtual Machine, and thus requires more resources.
Filesystem integration: No need to worry about which folders are being mounted like in the Docker containers- Nix apps run natively in your userspace.
Smaller deltas: if one tool is updated, you do not need to re-download everything, which is not the case with Docker.
Dead-simple customization: You can modify any tool versions and/or any CACE code and all you need to do is re-invoke
nix-shell. Nix’s smart cache-substitution feature will automatically figure out whether your build is cached or not, and if not, will automatically attempt to build any tools that have been changed.
Because of the advantages afforded by Nix, we recommend trying to install using Nix first. Follow the installation guide here: Nix-based Installation
Python-only¶
This method installs CACE with PIP from PyPI. But you will need to bring your own tools, which means that you have to manually compile and install each of the design tools and manage their versions.
You’ll need the following:
Python 3.8 or higher with PIP and Tkinter
Install CACE with PIP:
$ python3 -m pip install --upgrade cace
Non-exhaustive list of the required design tools:
Some of the measurements require:
However, as the versions will likely not match those packaged with CACE, some incompatibilities may arise, and we might not be able to support them.