# Install lilypond with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, scoop, winget, zypper

Music engraving system. Version 2.26.0 via Homebrew; verified 2026-06-27.

## Install

```sh
sudo av install brew:lilypond
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install lilypond
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install lilypond
```

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

### Linux

- apk (92%):

```sh
sudo apk add lilypond
```

  Evidence: Alpine Linux edge package indexes: lilypond from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install lilypond
```

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

- dnf (92%):

```sh
sudo dnf install lilypond
```

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

- Nix (92%):

```sh
nix profile install nixpkgs#lilypond
```

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

- pacman (92%):

```sh
sudo pacman -S lilypond
```

  Evidence: Arch Linux sync databases: lilypond from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install lilypond
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/lilypond
```

  Evidence: Scoop official bucket manifest trees: bucket/lilypond.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

- winget (92%):

```sh
winget install --id LilyPond.LilyPond -e
```

  Evidence: Windows Package Manager source index: LilyPond.LilyPond from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:lilypond
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/lilypond>
- **Version:** 2.26.0
- **Source summary:** Music engraving system
- **Homepage:** <https://lilypond.org>
- **Repository:** <https://git.savannah.gnu.org/gitweb?p=lilypond.git>
- **Upstream docs:** <https://lilypond.org/doc/v2.26/Documentation>
- **License:** GPL-3.0-or-later AND GPL-3.0-only AND OFL-1.1-RFN AND GFDL-1.3-no-invariants-or-later AND LicenseRef-Homebrew-public-domain AND MIT AND AGPL-3.0-only AND LPPL-1.3c
- **Source archive:** <https://lilypond.org/download/sources/v2.26/lilypond-2.26.0.tar.gz>
- **Last updated:** 2026-06-27T13:30:00-04:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- abc2ly (cli)
- convert-ly (cli)
- etf2ly (cli)
- lilymidi (cli)
- lilypond (cli)
- lilypond-book (cli)
- lilypond-invoke-editor (cli)
- midi2ly (cli)
- musicxml2ly (cli)
- abc2ly (alias)
- convert-ly (alias)
- etf2ly (alias)
- lilymidi (alias)
- lilypond (alias)
- lilypond-book (alias)
- lilypond-invoke-editor (alias)
- midi2ly (alias)
- musicxml2ly (alias)

## Dependencies

- bdw-gc
- cairo
- fontconfig
- freetype
- gettext
- ghostscript
- glib
- guile
- harfbuzz
- libpng
- pango
- python@3.14

## Build dependencies

- bison
- fontforge
- gettext
- make
- pkgconf
- t1utils
- texinfo
- texlive

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.26.0
- Package-manager updated: 2026-06-27
- Local data: ok
- Upstream repository: https://lilypond.org
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

LilyPond is a GNU music engraving system that turns textual music notation into high-quality printed scores. It is part scorewriter, part compiler culture: users write source files, run command-line tools, and receive PDF, PostScript, SVG, MIDI, and related output.

### Project history

LilyPond was created by Han-Wen Nienhuys and Jan Nieuwenhuizen to escape the mechanical look of much computer-generated sheet music. The official introduction frames the project as an attempt to let musicians and publishers focus on music while the program handles engraving details according to classical music-engraving practice.

The project's own essay ties LilyPond's design to traditional manual engravings from European publishers in the first half of the twentieth century. Instead of exposing every spacing and glyph choice as a manual WYSIWYG tweak, LilyPond encodes engraving rules and lets users override them from a text language when necessary.

LilyPond 2.0.0 was released on September 24, 2003 with a focus on syntax cleanup that made entering music easier and more efficient. The project has continued with extensive manuals, converters such as abc2ly and musicxml2ly, and an ecosystem of snippets, examples, editor modes, and publication workflows.

### Adoption history

LilyPond found a durable audience among free-software musicians, publishers, educators, composers, and technically inclined engravers who preferred a reproducible source-based workflow over GUI-only score editing. Its inclusion in GNU and broad packaging across Unix distributions made it a standard installable engraver for people already comfortable with LaTeX-like document production.

### How it is used

Users write .ly source files, run lilypond to engrave them, and often pair it with version control, Makefiles, LaTeX, or documentation pipelines. Auxiliary commands convert ABC, MIDI, ETF, and MusicXML inputs, update old LilyPond syntax, and integrate scores into larger documents.

### Why package nerds care

LilyPond is package-nerd significant because it treats sheet music like source code. It brings compiler-style reproducibility, text diffs, batch builds, fonts, Scheme extensibility, and decades of compatibility concerns into a domain more often associated with graphical editors.

### Timeline

- 1996: Han-Wen Nienhuys and Jan Nieuwenhuizen began the LilyPond project after earlier work around MusiXTeX-related tooling.
- 2003-05: The paper "LilyPond, a system for automated music engraving" appeared in the XIV Colloquium on Musical Informatics literature record.
- 2003-09-24: LilyPond 2.0.0 was released with syntax cleanups for easier and more efficient music entry.
- 2026-04-21: The LilyPond site listed LilyPond 2.26.0 as a stable release.

### Related projects

- LilyPond is related to GNU, TeX/LaTeX-style publishing workflows, MusicXML and ABC conversion tools, Guile/Scheme extension work, and graphical or hybrid front ends that use LilyPond for final engraving. It is often compared with notation programs such as MuseScore, Finale, and Sibelius, but its source-first workflow is closer to document compilers.

### Sources

- <https://lilypond.org/>
- <https://lilypond.org/attic.html>
- <https://lilypond.org/doc/v2.24/Documentation/essay-big-page.html>
- <https://lilypond.org/doc/v2.26/Documentation>
- <https://lilypond.org/doc/v2.26/Documentation/web/introduction>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** lilypond
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - lilypond - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | program for typesetting sheet music | https://lilypond.org/
- Debian apt - lilypond-data - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-data from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond music typesetter (data files) | https://lilypond.org/
- Debian apt - lilypond-doc - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond Documentation in info format (and metapackage) | https://lilypond.org/
- Debian apt - lilypond-doc-html - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation | https://lilypond.org/
- Debian apt - lilypond-doc-html-ca - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-ca from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Catalan | https://lilypond.org/
- Debian apt - lilypond-doc-html-cs - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-cs from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Czech | https://lilypond.org/
- Debian apt - lilypond-doc-html-de - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-de from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in German | https://lilypond.org/
- Debian apt - lilypond-doc-html-es - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-es from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Spanish | https://lilypond.org/
- Debian apt - lilypond-doc-html-fr - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-fr from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in French | https://lilypond.org/
- Debian apt - lilypond-doc-html-hu - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-hu from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Hungarian | https://lilypond.org/
- Debian apt - lilypond-doc-html-it - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-it from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Italian | https://lilypond.org/
- Debian apt - lilypond-doc-html-ja - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-ja from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Japanese | https://lilypond.org/
- Debian apt - lilypond-doc-html-nl - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-nl from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Dutch | https://lilypond.org/
- Debian apt - lilypond-doc-html-pt - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-pt from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Portuguese | https://lilypond.org/
- Debian apt - lilypond-doc-html-zh - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-html-zh from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond HTML Documentation in Chinese | https://lilypond.org/
- Debian apt - lilypond-doc-pdf - 2.24.4-5: normalized package name match | Debian stable package indexes: lilypond-doc-pdf from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | LilyPond PDF Documentation | https://lilypond.org/


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Media and graphics packages](https://www.automicvault.com/pkg/media-graphics-tools/) - Matched media, image, audio, video, or graphics metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [cairo](https://www.automicvault.com/pkg/brew/cairo/) - Runtime dependency declared by Homebrew.
- [fontconfig](https://www.automicvault.com/pkg/brew/fontconfig/) - Runtime dependency declared by Homebrew.
- [freetype](https://www.automicvault.com/pkg/brew/freetype/) - Runtime dependency declared by Homebrew.
- [gettext](https://www.automicvault.com/pkg/brew/gettext/) - Runtime dependency declared by Homebrew.
- [ghostscript](https://www.automicvault.com/pkg/brew/ghostscript/) - Runtime dependency declared by Homebrew.
- [glib](https://www.automicvault.com/pkg/brew/glib/) - Runtime dependency declared by Homebrew.
- [guile](https://www.automicvault.com/pkg/brew/guile/) - Runtime dependency declared by Homebrew.
- [bison](https://www.automicvault.com/pkg/brew/bison/) - Build dependency declared by Homebrew.
- [fontforge](https://www.automicvault.com/pkg/brew/fontforge/) - Build dependency declared by Homebrew.
- [make](https://www.automicvault.com/pkg/brew/make/) - Build dependency declared by Homebrew.
- [verovio](https://www.automicvault.com/pkg/brew/verovio/) - Shares av.db curated category or tags: cli, engraving, media, music-notation.
- [abcm2ps](https://www.automicvault.com/pkg/brew/abcm2ps/) - Shares av.db curated category or tags: cli, media, music-notation.
- [ly](https://www.automicvault.com/pkg/brew/ly/) - Shares av.db curated category or tags: cli, media, music-notation.
- [abcmidi](https://www.automicvault.com/pkg/brew/abcmidi/) - Shares av.db curated category or tags: cli, media, music-notation.
- [a52dec](https://www.automicvault.com/pkg/brew/a52dec/) - Shares av.db curated category or tags: cli, media.
- [aalib](https://www.automicvault.com/pkg/brew/aalib/) - Shares av.db curated category or tags: cli, media.
- [ab-av1](https://www.automicvault.com/pkg/brew/ab-av1/) - Shares av.db curated category or tags: cli, media.
- [abcde](https://www.automicvault.com/pkg/brew/abcde/) - Shares av.db curated category or tags: cli, media.
- [librsvg](https://www.automicvault.com/pkg/brew/librsvg/) - Local package facts share a topical domain. Shared terms: cairo, cli, convert, fontconfig, freetype.

## Combined YAML source

View the package source record on GitHub. [combined/lilypond.yml](https://github.com/automic-vault/db/blob/main/combined/lilypond.yml)


## Sources

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