Automic VaultAutomic Vault

brew

Install alda with Homebrew, apk, Nix

Music programming language for musicians. Version 2.4.3 via Homebrew; verified 2026-05-13.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install alda

local Homebrew formula metadata

Linux

Alpine Linux apkverified · 92%
sudo apk add alda

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

Nixverified · 92%
nix profile install nixpkgs#alda

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

overview

Package summary

Music programming language for musicians

Commands and aliases

  • alda
  • alda-player

history

Project history and usage

Alda is a text-based music programming language and command-line toolchain for writing, playing, and experimenting with musical scores from plain text. Its niche is the overlap between music notation, live coding, algorithmic composition, and Unix-style text workflows.

Project history

The project is presented by its maintainers as a language for composing and playing music using only a text editor and the command line. The official site and README emphasize a markup-like syntax, General MIDI playback, examples, and an interactive REPL, positioning Alda as a music language that is approachable to musicians and still scriptable enough for programmers.

Alda's repository and site carry a 2012-2026 copyright notice for Dave Yarwood and contributors. The modern codebase is split into an `alda` client and `alda-player` playback process. Alda 2.0.0, released in June 2021, was a from-scratch rewrite in Go and Kotlin after the first generation had been mostly Clojure with a small Java client. The migration guide says Alda 2 kept the language mostly compatible while removing inline Clojure evaluation and introducing the separate player process.

Subsequent Alda 2 releases show ongoing package-maintainer concerns: player-process recovery, log4j security updates, `alda doctor`, MusicXML import, deterministic MIDI channel assignment, ARM Linux support, and memory reductions for lower-RAM devices such as Raspberry Pi.

Adoption history

Alda is distributed through several package managers in the supplied package facts, including Homebrew, apk, and Nix. Its official README points users to the website for installation, while also documenting source builds for the Go client and Kotlin/Java player.

The project also maintains community surfaces for package users rather than only library consumers: official docs, examples, a cheat sheet, a Slack group, a subreddit, and a REPL workflow. That makes it recognizable in CLI package indexes as a real end-user tool, not merely a language experiment.

How it is used

Typical use is `alda play --file score.alda`, `alda play --code "piano: c6 d12 e6 g12~4"`, or `alda repl` for interactive composition. Scores are text files, so users naturally keep them in version control, edit them with ordinary editors, and run them from scripts.

Alda's more advanced usage includes programmatic composition, MIDI export/import workflows, and multi-process playback. In Alda 2, the CLI starts `alda-player` as needed and provides diagnostic commands such as `alda doctor` to help with audio and player-process setup.

Why package nerds care

Alda is package-nerd interesting because it packages a whole creative runtime as a pair of CLI executables rather than as a GUI application. It depends on the host audio stack, JVM/player behavior, architecture-specific binaries, and language-level compatibility, all of which show up in changelog entries that matter to distro maintainers.

It also demonstrates the classic text-tool value proposition: a domain that is normally graphical, music notation and playback, becomes inspectable, diffable, scriptable, and automatable.

Timeline

  • 2012: Project copyright period begins in official site and README notices.
  • 2015: Official docs link Dave Yarwood's text-based music composition manifesto.
  • 2021-06-30: Alda 2.0.0 released as a Go and Kotlin rewrite.
  • 2023-05-07: Alda 2.2.5 added MusicXML import.
  • 2024-06-22: Alda 2.3.0 reworked MIDI channel assignment.
  • 2025-09-19: Alda 2.3.3 added broader Linux ARM support.
  • 2026-05-12: Alda 2.4.3 reduced player memory usage.

Related projects

  • Alda's own migration guide identifies Alda 1 as the mostly Clojure predecessor and `alda-clj` as a Clojure DSL for algorithmic music that preserves part of the earlier Clojure-oriented workflow.
  • The docs connect Alda to General MIDI, MusicXML import, editor plugins, and the nREPL-inspired REPL client/server model.

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:programming language

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 2 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
aldacliglobal executable
alda-playercliglobal 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 version2.4.3
manager updated2026-05-13
local dataok
upstreamnot checked
latest detectednot detected

https://github.com/alda-lang/alda

install metadata

Package metadata

Package keybrew:alda
Version2.4.3
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/alda
Homepagehttps://alda.io
Repositoryhttps://github.com/alda-lang/alda
Upstream docshttps://alda.io/
LicenseEPL-2.0
Source archivehttps://github.com/alda-lang/alda/archive/refs/tags/release-2.4.3.tar.gz
Last updated2026-05-13T08:18:19Z
Pulseupdated
Dependenciesopenjdk
Build dependenciesgo, gradle@8
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 Namealda
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • 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%

alda

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

alda 2.3.2-r10

Music programming language for musicians

https://github.com/alda-lang/alda

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

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