Automic VaultAutomic Vault

brew

Install d2 with Homebrew, dnf, MacPorts, Nix, pacman, scoop, winget, zypper

Modern diagram scripting language that turns text to diagrams. Version 0.7.1 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install d2

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install d2

MacPorts ports tree · graphics/d2/Portfile · source: api.github.com

Linux

Fedora dnfverified · 92%
sudo dnf install d2

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

Nixverified · 92%
nix profile install nixpkgs#d2

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

Arch Linux pacmanverified · 92%
sudo pacman -S d2

Arch Linux sync databases · d2 · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install d2

openSUSE Tumbleweed package metadata · d2 · source: download.opensuse.org

Windows

Scoopverified · 92%
scoop install main/d2

Scoop official bucket manifest trees · bucket/d2.json · source: api.github.com

Windows Package Managerverified · 92%
winget install --id Terrastruct.D2 -e

Windows Package Manager source index · Terrastruct.D2 · source: cdn.winget.microsoft.com

overview

Package summary

Modern diagram scripting language that turns text to diagrams

Commands and aliases

  • d2

history

Project history and usage

D2 is a modern diagram scripting language and CLI that turns text files into diagrams, especially for software architecture and documentation workflows.

Project history

The D2 repository was created in 2022 by Terrastruct. The README presents D2 as a language, command-line renderer, and Go library, with official documentation, a playground, themes, language tooling, plugins, and export formats.

Adoption history

D2 entered the diagram-as-code ecosystem as another text-to-diagram option alongside tools such as Graphviz and Mermaid. Its README emphasizes package-manager installation, editor/tooling support, and a list of open-source projects that document with D2.

How it is used

The usual workflow is to write a .d2 file and run the d2 CLI to produce SVG, PNG, or PDF output. D2 can also be used as a Go library and can swap layout engines such as ELK or TALA.

Why package nerds care

D2 is package-manager friendly because it ships as a single CLI for docs pipelines: install it with a system package manager, keep diagrams as source text, and regenerate images in builds or documentation sites.

Timeline

  • 2022: D2 repository created.
  • 2022: Early v0.1.x tags published.
  • 2025: v0.7.1 release published.

Related projects

  • D2 relates to diagram-as-code tools, Graphviz-style layout engines, ELK, TALA, Go documentation pipelines, and editor plugins.

security posture

Risk level: yellow

generalized runtime or code generation signal.

Risk classifier

yellow risk · medium confidence · runtime

Why

  • generalized runtime or code generation signal

Signals

  • text:scripting language

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 8 platform targets.
  • 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
d2cliglobal 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 version0.7.1
manager updated
local dataok
upstreamcurrent
latest detectedv0.7.1

https://github.com/terrastruct/d2

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

install metadata

Package metadata

Package keybrew:d2
Version0.7.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/d2
Homepagehttps://d2lang.com/
Repositoryhttps://github.com/terrastruct/d2
Upstream docshttps://d2lang.com/
LicenseMPL-2.0
Source archivehttps://github.com/terrastruct/d2/archive/refs/tags/v0.7.1.tar.gz
Build dependenciesgo
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Named2
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%

d2

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

d2 0.6.9-8.fc44

Modern diagram scripting language that turns text to diagrams

https://github.com/terrastruct/d2

sudo dnf install d2
  • License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND FTL AND ISC AND MIT AND MPL-2.0
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: d2
  • 3 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: D2
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: d2 from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

d2 0.7.1-2

A modern diagram scripting language that turns text to diagrams

https://d2lang.com

sudo pacman -S d2
  • License: MPL-2.0
  • Architecture: x86_64
  • 1 dependencies
  • normalized package name match
  • Matched by: D2
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: d2 from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

d2 0.7.1-1.4

CLI tool and modern declarative language that turns text to diagrams

https://github.com/terrastruct/d2

sudo zypper install d2
  • License: Apache-2.0 AND MIT AND MPL-2.0 AND EPL-2.0 AND GPL-2.0-or-later AND BSD-3-Clause
  • Category: Productivity/Text/Utilities
  • Architecture: x86_64
  • Source Package: d2
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: D2
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: d2 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

d2

sudo port install d2
  • normalized package name match
  • Matched by: D2
MacPorts ports tree · api.github.com · MacPorts ports tree: graphics/d2/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Scoop95%

main/d2

scoop install main/d2
  • normalized package name match
  • Matched by: D2
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/d2.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
winget95%

Terrastruct.D2

winget install --id Terrastruct.D2 -e
  • normalized package name match
  • Matched by: D2
Windows Package Manager source index · cdn.winget.microsoft.com · Windows Package Manager source index: Terrastruct.D2 from https://cdn.winget.microsoft.com/cache/source.msix

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.

Combined YAML source

View the package source record on GitHub.

combined/d2.yml

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