# Install mscgen with Homebrew, apt, dnf, MacPorts, Nix, zypper

Parses Message Sequence Chart descriptions and produces images. Version 0.20 via Homebrew; verified 2026-06-13. Also installable with debian: sudo apt install mscgen.

## Install

```sh
sudo av install brew:mscgen
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install mscgen
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install mscgen
```

  Evidence: MacPorts ports tree: graphics/mscgen/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install mscgen
```

  Evidence: Debian stable package indexes: mscgen from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install mscgen
```

  Evidence: Fedora Rawhide package metadata: mscgen from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#mscgen
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ms/mscgen/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- zypper (92%):

```sh
sudo zypper install mscgen
```

  Evidence: openSUSE Tumbleweed package metadata: mscgen from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## Package facts

- **Package key:** brew:mscgen
- **Package manager:** Homebrew
- **Version:** 0.20
- **Source summary:** Parses Message Sequence Chart descriptions and produces images
- **Homepage:** <https://www.mcternan.me.uk/mscgen/>
- **Last updated:** 2026-06-13T23:35:05+02:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- mscgen (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.20
## Project history and usage

mscgen is Michael McTernan's small Message Sequence Chart renderer and text language. The project page says it parses MSC descriptions and produces PNG, SVG, EPS, or server-side image-map output, with a syntax inspired by Graphviz DOT but simpler because sequence charts do not require general graph layout. It is written in ANSI C, uses the GD graphics library for PNG output, and is licensed under GPLv2.

### How it is used

Its adoption came through documentation tooling as much as standalone diagram generation. Doxygen 1.5.2 added `\msc` and `\endmsc` support after McTernan experimented with custom Doxygen modifications, letting developers embed MSCs alongside source-code documentation in a way similar to DOT diagrams. The project page also lists packaging for distributions and integrations or extensions for AsciiDoc, Sphinx, LaTeX, Org-mode, TWiki, and JIRA. In practice, mscgen fits the Unix-documentation niche: keep diagrams as reviewable text, render them in builds or docs, and use a smaller tool when Msc-generator's broader GUI and multi-chart feature set is unnecessary.

### Sources

- <https://formulae.brew.sh/formula/mscgen>
- <https://www.mcternan.me.uk/mscgen/>


## Security Notes

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

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Other Package-Manager Records

- Debian apt - mscgen - 0.20-16: normalized package name match | Debian stable package indexes: mscgen from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Message Sequence Chart (MSC) generator | https://www.mcternan.me.uk/mscgen/
- Nix - mscgen: normalized package name match | nixpkgs package indexes: pkgs/by-name/ms/mscgen/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - mscgen - 0.20-15: normalized package name match | Ubuntu 24.04 LTS package indexes: mscgen from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Message Sequence Chart (MSC) generator | https://www.mcternan.me.uk/mscgen/
- Ubuntu apt - mscgen-dbgsym - 0.20-15: normalized package name match | Ubuntu 24.04 LTS package indexes: mscgen-dbgsym from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | debug symbols for mscgen
- dnf - mscgen - 0.20-44.fc45: normalized package name match | Fedora Rawhide package metadata: mscgen from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Message Sequence Chart rendering program | http://www.mcternan.me.uk/mscgen/
- zypper - mscgen - 0.20-3.31: normalized package name match | openSUSE Tumbleweed package metadata: mscgen from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Message Sequence Chart Renderer | http://www.mcternan.me.uk/mscgen/
- MacPorts - mscgen: normalized package name match | MacPorts ports tree: graphics/mscgen/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/mscgen.yml](https://github.com/mxcl/pkgdb/blob/main/combined/mscgen.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
