Automic VaultAutomic Vault

brew

Install icestorm with Homebrew, apk, dnf, Nix

Tools for analyzing and creating Lattice iCE40 FPGA bitstream files. Version 1.1 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install icestorm

local Homebrew formula metadata

Linux

Alpine Linux apkverified · 92%
sudo apk add icestorm

Alpine Linux edge package indexes · icestorm · source: dl-cdn.alpinelinux.org

Fedora dnfverified · 92%
sudo dnf install icestorm

Fedora Rawhide package metadata · icestorm · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#icestorm

nixpkgs package indexes · pkgs/by-name/ic/icestorm/package.nix · source: api.github.com

overview

Package summary

Tools for analyzing and creating Lattice iCE40 FPGA bitstream files

Commands and aliases

  • icebox_asc2hlc
  • icebox_chipdb
  • icebox_colbuf
  • icebox_diff
  • icebox_explain
  • icebox_hlc2asc
  • icebox_html
  • icebox_maps
  • icebox_stat
  • icebox_vlog
  • icebram
  • icemulti
  • icepack
  • icepll
  • iceprog
  • icetime
  • iceunpack

history

Project history and usage

Project IceStorm is the reverse-engineered documentation and tool suite for Lattice iCE40 FPGA bitstreams. In package-manager terms it is the `ice*` tool bundle that helped make a fully open-source Verilog-to-bitstream flow practical on inexpensive FPGA boards.

Project history

The project began as an effort to document the iCE40 bitstream format and provide simple tools for analyzing and creating bitstream files. Its own timeline records a first public release in March 2015, a working fully open-source flow with Yosys and Arachne-pnr in May 2015, and a move of the source code to GitHub in July 2015.

IceStorm's documentation frames Lattice iCE40 as a good target because the architecture is regular and minimal, with inexpensive development boards available. That made the family useful both for reverse-engineered documentation and as a reference platform for open FPGA tooling.

Adoption history

IceStorm became important because it linked several independent tools into an end-to-end flow: Yosys for synthesis, Arachne-pnr and later nextpnr for place-and-route, IceStorm tools for packing, unpacking, timing, bitstream inspection, and programming. By 2016 the documentation listed support across LP/HX 1K, 4K, and 8K package variants, and in 2018 it added iCE40 UltraPlus support.

The package shows up in Homebrew, Alpine, Fedora, and Nix metadata because FPGA hobbyists, hardware hackers, and digital-design developers often want the flow on ordinary Unix-like developer machines rather than inside vendor IDEs.

How it is used

A typical flow synthesizes Verilog with Yosys, places and routes with Arachne-pnr or nextpnr, packs the ASCII bitstream with `icepack`, and programs hardware with `iceprog`. Other tools such as `iceunpack`, `icebox_explain`, `icebox_vlog`, `icetime`, and `icepll` support reverse engineering, inspection, timing, and PLL configuration.

The package is especially associated with small iCE40 boards such as the iCEstick and HX8K breakout board, where a command-line flow is enough to build, inspect, and upload simple FPGA designs.

Why package nerds care

Project IceStorm is one of the packages that made open FPGA development feel like normal Unix development: install compiler-like tools, run commands, inspect generated artifacts, and avoid proprietary GUI-only flows for supported iCE40 parts.

It is also historically important as a bridge between software package managers and hardware toolchains. Its executables expose FPGA bitstreams as files that can be packed, unpacked, explained, converted to Verilog, timed, and programmed.

Timeline

  • 2015-03-22: First public release and demonstration video.
  • 2015-05-27: Working fully open-source flow with Yosys and Arachne-pnr.
  • 2015-07-19: 8K chip support released and source code moved to GitHub.
  • 2016-01-17: First IceTime timing-analysis release.
  • 2016-02-07: Support for all package variants of LP1K, LP4K, LP8K, HX1K, HX4K, and HX8K.
  • 2018-01-30: iCE40 UltraPlus support released.
  • 2025: The GitHub repository lists v1.1 as a tagged release.

Related projects

  • Yosys provides Verilog synthesis for the iCE40 flow.
  • Arachne-pnr and nextpnr provide place-and-route options used with IceStorm.
  • Lattice iCEcube2 is the proprietary tool whose generated bitstreams were used as comparison material during reverse engineering.
  • F4PGA and other FPGA documentation efforts belong to the broader open FPGA tooling movement.

security posture

Risk level: blue

broad file, network, media, or database tool signal.

Risk classifier

blue risk · medium confidence · tool

Why

  • broad file, network, media, or database tool signal

Signals

  • text:stream

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 3 runtime dependencies.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
icebox_asc2hlccliglobal executable
icebox_chipdbcliglobal executable
icebox_colbufcliglobal executable
icebox_diffcliglobal executable
icebox_explaincliglobal executable
icebox_hlc2asccliglobal executable
icebox_htmlcliglobal executable
icebox_mapscliglobal executable
icebox_statcliglobal executable
icebox_vlogcliglobal executable
icebramcliglobal executable
icemulticliglobal executable
icepackcliglobal executable
icepllcliglobal executable
iceprogcliglobal executable
icetimecliglobal executable
iceunpackcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.1
manager updated
local dataok
upstreamcurrent
latest detectedv1.1

https://github.com/YosysHQ/icestorm

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:icestorm
Version1.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/icestorm
Homepagehttps://prjicestorm.readthedocs.io
Repositoryhttps://github.com/YosysHQ/icestorm
Upstream docshttps://prjicestorm.readthedocs.io
LicenseISC
Source archivehttps://github.com/YosysHQ/icestorm/archive/refs/tags/v1.1.tar.gz
Dependencieslibftdi, libusb, python@3.14
Build dependenciespkgconf
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameicestorm
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

icestorm

nix profile install nixpkgs#icestorm
  • normalized package name match
  • Matched by: Icestorm
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ic/icestorm/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

icestorm 0_git20240517-r0

Project IceStorm - Lattice iCE40 FPGAs Bitstream Documentation

https://github.com/YosysHQ/icestorm

sudo apk add icestorm
  • License: ISC
  • Architecture: x86_64
  • Source Package: icestorm
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Icestorm
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: icestorm from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
dnf95%

icestorm 0-0.43.20250707gitf31c39c.fc44

Lattice iCE40 FPGA bitstream creation/analysis/programming tools

http://bygone.clairexen.net/icestorm

sudo dnf install icestorm
  • License: ISC
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: icestorm
  • 7 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Icestorm
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: icestorm from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment