LibreLane Smoketest
Install LibreLane, run a sanity check, and package DEF files for Flow Arena
This guide follows LibreLane's Linux Nix installation path and adds the Flow Arena-specific packaging step: generate final DEF files, zip them, and submit the archive for scoring.
Install curl and Nix
LibreLane recommends Nix on Ubuntu 22.04+ and warns against installing Nix from apt because that package is often outdated.
sudo apt-get install -y curl
curl --proto '=https' --tlsv1.2 -fsSL https://artifacts.nixos.org/nix-installer | sh -s -- install --no-confirm --extra-conf "
extra-substituters = https://nix-cache.fossi-foundation.org
extra-trusted-public-keys = nix-cache.fossi-foundation.org:3+K59iFwXqKsL7BNu6Guy0v+uTlwsxYQxjspXzqLYQs=
extra-experimental-features = nix-command flakes
"Open a fresh terminal
Close existing shells after installation so the Nix profile and daemon environment are loaded cleanly.
nix --versionClone LibreLane
Enter the LibreLane repository with nix-shell. The first shell entry can take several minutes while cached binaries are fetched.
git clone https://github.com/librelane/librelane
cd librelane
nix-shellVerify LibreLane
Run the upstream smoke test before spending time on benchmark designs.
librelane --smoke-testDownload Flow Arena Inputs
Use the Download page to fetch Verilog and the SKY130 PDK bundle, then unpack them into your local flow workspace.
mkdir -p flow-arena-inputs
unzip benchmark-verilog.zip -d flow-arena-inputs
unzip sky130-pdk.zip -d flow-arena-inputsRun Your LibreLane Flow
Create one LibreLane design directory per benchmark, point it at the downloaded Verilog, select SKY130, and run the flow. The exact config is intentionally yours.
# Example shape only. Keep the top module name equal to the benchmark name.
librelane ./designs/<design_name>/config.jsonCollect DEF Files
Flow Arena expects one DEF file per design. Keep the DEF stem equal to the benchmark name so scoring can match it.
mkdir -p def
cp ./designs/<design_name>/runs/*/final/def/<design_name>.def def/
zip -r def.zip defSubmit and Inspect Logs
Upload def.zip on the Submit page. Use Profile or Global Queue to watch stages: DEF to netlist, CVC, RCX, OpenSTA, KLayout DRC, and scoring.
Submit page -> choose SKY130 -> upload def.zipSubmit a single ZIP archive containing DEF files. For example, `def/gcd.def`, `def/xtea.def`, and other benchmark DEFs. Names must match benchmark design names so hidden/public scoring can map each result.