nix-eda has moved here: github.com/fossi-foundation/nix-eda
A flake containing a collection of Nix derivations for EDA (Electronic Design Automation) utilities, curated by Efabless Corporation.
nix-eda is not affiliated with the NixOS Foundation or any of its affiliates.
We compile and cache the tools for the following platforms:
| Platform | Nix System Name |
|---|---|
| Linux (x86_64) | x86_64-linux |
| Linux (aarch64) | aarch64-linux |
| macOS (x86_64) | x86_64-darwin |
| macOS (arm64) | aarch64-darwin |
- Magic
- Netgen
- ngspice
- KLayout
- (+
.pymodfor Python module)
- (+
- [GDSFactory]
- (+
klayout-gdsfactoryas a shorthand for an environment with both installed)
- (+
- Surelog
- Verilator
- Xschem
- Xyce
- Linux only.
- Yosys
- (+
.pyosysfor Python module) - (+ some plugins that can be accessed programmatically)
- (
yosysFullfor all plugins)
- (+
Before anything, if you haven't installed Nix using the OpenLane 2 documentation, make sure that:
- You have Nix installed.
- If not, see OpenLane 2's documentation on Nix-based installation linked above.
- If you already have Nix installed, you have enabled the experimental Nix
features
flakesandnix-command.- If not, see this this guide for more info.
- You have the OpenLane Cachix enabled.
- If not, see the "If you already have Nix set up…" portion of the Openlane 2 installation documentation linked above.
If you satisfy these conditions, you may use any of the tools by creating a Terminal shell with the tool as follows:
nix shell github:efabless/nix-eda#magicthen simply invoking magic. If you correctly set up the OpenLane cachix, you
won't have to build anything, but if you didn't, your computer will attempt to
build it.
You may also create a shell with multiple tools as follows:
nix shell github:efabless/nix-eda#{magic,xschem}To be documented, but you may refer to OpenLane 2 as an example of how to use this repository as a dependency. OpenLane 2 uses this repository in addition to a number of other tools to provide a full digital design environment.
Please note that the API for the functions provided in the Flake are not yet stable.
The Apache License, version 2.0. See 'License'.
