# Install aldo with Homebrew, apt, dnf, Nix, zypper

Morse code learning tool released under GPL. Version 0.7.7 via Homebrew; verified 2026-06-19.

## Install

```sh
sudo av install brew:aldo
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install aldo
```

  Evidence: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install aldo
```

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

- dnf (92%):

```sh
sudo dnf install aldo
```

  Evidence: Fedora Rawhide package metadata: aldo 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#aldo
```

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

- zypper (92%):

```sh
sudo zypper install aldo
```

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

## Package facts

- **Package key:** brew:aldo
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/aldo>
- **Version:** 0.7.7
- **Source summary:** Morse code learning tool released under GPL
- **Homepage:** <https://www.nongnu.org/aldo/>
- **Repository:** <https://git.savannah.nongnu.org/cgit/aldo.git>
- **Upstream docs:** <https://git.savannah.nongnu.org/cgit/aldo.git/plain/aldo.1>
- **License:** GPL-2.0-or-later
- **Source archive:** <https://download.savannah.gnu.org/releases/aldo/aldo-0.7.7.tar.bz2>
- **Last updated:** 2026-06-19T12:30:01-07:00
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- aldo (cli)
- aldo (alias)

## Dependencies

- libao

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

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

Aldo is a small console Morse-code trainer written in ISO C++. It belongs to the long-lived class of ham-radio and learning tools that survive in package managers because they do one offline task with minimal ceremony.

### Project history

The official Savannah source dates Aldo's beginning to May 6, 2001 and lists Giuseppe Martino as the original author. Its man page describes it as a console Morse-code trainer developed from scratch in ISO C++ with the GNU C++ standard library and libao.

The NEWS file shows rapid early development in 2003-2005: a Koch training method, callsign exercise, exercise generation, persistent Koch settings, autoconf/automake support, and a 0.7.0 switch to libao. The Savannah cgit summary shows later maintenance tags through v0.7.8 in 2013.

### Adoption history

Aldo appears in the supplied package facts across Homebrew, Debian, Ubuntu, Fedora, openSUSE, and Nix. That is the adoption profile of a stable utility whose upstream is quiet but whose source remains portable enough for distributions to keep carrying.

Its Debian-oriented man page and Savannah hosting reflect an older GNU/Linux packaging culture: source tarballs, man pages, GPL licensing, and a user-specific dotfile under the home directory.

### How it is used

Running `aldo` opens a menu-driven console trainer with Blocks, Koch, File, and Callsign exercises. The Koch mode starts with two Morse characters at full speed and adds characters as the learner reaches the target recognition threshold.

Configuration is stored in `~/.aldorc`; the source creates a default config if that file is missing. Audio output is handled through libao, so device selection follows the selected libao driver.

### Why package nerds care

Aldo is significant less because it is large and more because it is archetypal: a tiny GPL command-line program, old enough to have moved through SourceForge-era email addresses and Savannah, still packaged by modern distros.

For package maintainers, the interesting bits are exactly the boring ones: libao linkage, old C++ code, man page availability, and a stable home-directory config file.

### Timeline

- 2001-05-06: Source header records the project beginning.
- 2003-07-06: NEWS records Aldo 0.5.0 with Koch method and exercise-from-file support.
- 2004-11-20: Man page date for the Debian-oriented manual page.
- 2005-10-04: Aldo 0.7.0 switched to libao and removed soundcard configuration.
- 2013-07-16: Savannah cgit shows v0.7.8 tag and last listed maintenance commits.

### Related projects

- Aldo's closest technical dependency is libao, used for portable audio output.
- Its training methods place it near other Morse and amateur-radio learning utilities rather than general productivity suites.

### Sources

- <https://git.savannah.nongnu.org/cgit/aldo.git>
- <https://git.savannah.nongnu.org/cgit/aldo.git/plain/NEWS>
- <https://git.savannah.nongnu.org/cgit/aldo.git/plain/aldo.1>
- <https://git.savannah.nongnu.org/cgit/aldo.git/plain/src/main.cc>
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

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


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.aldorc
## Source Database Details

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

## Other Package-Manager Records

- Debian apt - aldo - 0.7.8-2: normalized package name match | Debian stable package indexes: aldo from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Morse code training program | https://www.nongnu.org/aldo/
- Nix - aldo: normalized package name match | nixpkgs package indexes: pkgs/by-name/al/aldo/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - aldo - 0.7.8-2: normalized package name match | Ubuntu 24.04 LTS package indexes: aldo from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Morse code training program | https://www.nongnu.org/aldo/
- dnf - aldo - 0.7.7-19.fc44: normalized package name match | Fedora Rawhide package metadata: aldo from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | A morse tutor | http://aldo.nongnu.org/
- zypper - aldo - 0.7.8-2.3: normalized package name match | openSUSE Tumbleweed package metadata: aldo from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Console-based morse tutor | https://www.nongnu.org/aldo


## 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.
- [Productivity CLI packages](https://www.automicvault.com/pkg/productivity-cli-packages/) - Matched curated productivity category metadata from av.db.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [gnu-typist](https://www.automicvault.com/pkg/brew/gnu-typist/) - Shares av.db curated category or tags: cli, education, productivity.
- [klavaro](https://www.automicvault.com/pkg/brew/klavaro/) - Shares av.db curated category or tags: cli, education, productivity.
- [moodle-dl](https://www.automicvault.com/pkg/brew/moodle-dl/) - Shares av.db curated category or tags: cli, education, productivity.
- [a2ps](https://www.automicvault.com/pkg/brew/a2ps/) - Shares av.db curated category or tags: cli, productivity.
- [abook](https://www.automicvault.com/pkg/brew/abook/) - Shares av.db curated category or tags: cli, productivity.
- [acronym](https://www.automicvault.com/pkg/brew/acronym/) - Shares av.db curated category or tags: cli, productivity.
- [ad](https://www.automicvault.com/pkg/brew/ad/) - Shares av.db curated category or tags: cli, productivity.
- [aerc](https://www.automicvault.com/pkg/brew/aerc/) - Shares av.db curated category or tags: cli, productivity.
- [nmh](https://www.automicvault.com/pkg/brew/nmh/) - Local package facts share a topical domain. Shared terms: cli, productivity.
- [jcal](https://www.automicvault.com/pkg/brew/jcal/) - Local package facts share a topical domain. Shared terms: cli, productivity.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- 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
