# Install calcurse with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

Text-based personal organizer. Version 4.8.2 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:calcurse
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install calcurse
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install calcurse
```

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

### Linux

- apk (92%):

```sh
sudo apk add calcurse
```

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

- Debian apt (92%):

```sh
sudo apt install calcurse
```

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

- dnf (92%):

```sh
sudo dnf install calcurse
```

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

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

- pacman (92%):

```sh
sudo pacman -S calcurse
```

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

- zypper (92%):

```sh
sudo zypper install calcurse
```

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

## Package facts

- **Package key:** brew:calcurse
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/calcurse>
- **Version:** 4.8.2
- **Source summary:** Text-based personal organizer
- **Homepage:** <https://calcurse.org/>
- **Repository:** <https://git.calcurse.org/calcurse.git>
- **Upstream docs:** <https://calcurse.org/devel>
- **License:** BSD-2-Clause
- **Source archive:** <https://calcurse.org/files/calcurse-4.8.2.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- calcurse (cli)
- calcurse-caldav (cli)
- calcurse-upgrade (cli)
- calcurse-vdir (cli)
- calcurse (alias)
- calcurse-caldav (alias)
- calcurse-upgrade (alias)
- calcurse-vdir (alias)

## Dependencies

- gettext

## Build dependencies

- pkgconf

## Uses from macOS

- ncurses

## Install behavior

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

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 4.8.2
- Local data: ok
- Upstream repository: https://calcurse.org/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

calcurse is a curses-based personal organizer for the command line, combining calendar, appointments, TODOs, notifications, iCalendar import/export, scripting-friendly output, and later CalDAV synchronization. It is a classic Unix productivity package: terminal UI first, plain local data, and automation hooks.

### Project history

The official site describes calcurse as a command-line calendar and scheduling application for events, appointments, and everyday tasks, with a configurable notification system and a curses interface. Its release notes begin with version 1.0 on 8 October 2005 and continue through modern 4.x releases.

Over time calcurse added recurring appointments, internationalization, UTF-8 support, import/export, user-configurable key bindings, hooks, CalDAV support, and command-line filtering/formatting. Version 4.0.0 in 2015 marks a later modernization point in the release stream, while 4.8.x releases in the 2020s show continued maintenance.

### Adoption history

calcurse became popular among terminal-first users who wanted a lightweight alternative to graphical calendar applications and web services. The official site explicitly highlights command-line options suitable for scripts, version-control hooks for calendar data, and CalDAV synchronization for mobile-device interoperability.

Its package-manager footprint is broad for a small TUI application, appearing in Homebrew and major Linux distributions because it has few conceptual moving parts: install the binary, keep data in user config/data directories, and automate around text-friendly commands.

### How it is used

Users run `calcurse` for the full-screen TUI, `calcurse-caldav` for synchronization, and helper tools such as `calcurse-upgrade` or `calcurse-vdir` for data migration and vdir workflows. It is often used locally with cron, shell scripts, mail notifications, and version control hooks.

The package stores user configuration and key bindings in calcurse config files, while CalDAV credentials are typically kept in the caldav config file, making the credential path relevant for audits and backup tooling.

### Why package nerds care

calcurse matters because it is a rare survivor in the terminal organizer category: small enough to package everywhere, practical enough to replace a GUI calendar for some users, and scriptable enough to participate in Unix workflows.

For package nerds, the interesting history is its evolution from a 2005 curses calendar into a tool with iCalendar, CalDAV, hooks, vdir-style workflows, and distribution packaging without losing the command-line-first model.

### Timeline

- 2005: calcurse 1.0 released on 8 October 2005.
- 2008: calcurse 2.0 released on 2 March 2008.
- 2012: calcurse 3.0.0 released on 1 July 2012.
- 2015: calcurse 4.0.0 released on 22 February 2015.
- 2020: calcurse 4.7.0 released with continued 4.x maintenance.
- 2022: calcurse 4.8.0 released.
- 2025: calcurse 4.8.2 listed as the current source download on the official site.

### Related projects

- Related tools include remind, khal, vdirsyncer, abook, mutt/neomutt calendar workflows, taskwarrior, todoman, pcal, and iCalendar/CalDAV servers. calcurse is distinct because it combines an interactive curses UI with useful non-interactive commands.

### Sources

- <https://calcurse.org/>
- <https://calcurse.org/devel>
- <https://calcurse.org/files/calcurse-caldav.html>
- <https://calcurse.org/files/changes.html>
- <https://calcurse.org/files/manual.html>


## 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: ~/.config/calcurse/conf, ~/.config/calcurse/keys, ~/.calcurse/conf, ~/.calcurse/keys, ~/.calcurse/caldav/config

## Credential files

- Unix: ~/.calcurse/caldav/config
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** calcurse
- **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 - calcurse - 4.8.1-1.3: normalized package name match | Debian stable package indexes: calcurse from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | text-based calendar and todo manager | https://calcurse.org
- Nix - calcurse: normalized package name match | nixpkgs package indexes: pkgs/by-name/ca/calcurse/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - calcurse - 4.8.1-1.1: normalized package name match | Ubuntu 24.04 LTS package indexes: calcurse from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | text-based calendar and todo manager | https://calcurse.org
- apk - calcurse - 4.8.2-r1: normalized package name match | Alpine Linux edge package indexes: calcurse from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | A text-based personal organizer | https://calcurse.org/
- apk - calcurse-caldav - 4.8.2-r1: normalized package name match | Alpine Linux edge package indexes: calcurse-caldav from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | CalDAV synchronization support for calcurse | https://calcurse.org/
- apk - calcurse-dbg - 4.8.2-r1: normalized package name match | Alpine Linux edge package indexes: calcurse-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | A text-based personal organizer (debug symbols) | https://calcurse.org/
- apk - calcurse-doc - 4.8.2-r1: normalized package name match | Alpine Linux edge package indexes: calcurse-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | A text-based personal organizer (documentation) | https://calcurse.org/
- dnf - calcurse - 4.8.2-3.fc44: normalized package name match | Fedora Rawhide package metadata: calcurse from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Text-based personal organizer | https://calcurse.org
- pacman - calcurse - 4.8.2-1: normalized package name match | Arch Linux sync databases: calcurse from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A text-based personal organizer | https://calcurse.org/
- zypper - calcurse - 4.8.2-1.4: normalized package name match | openSUSE Tumbleweed package metadata: calcurse from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Text-based Organizer | https://calcurse.org
- zypper - calcurse-lang - 4.8.2-1.4: normalized package name match | openSUSE Tumbleweed package metadata: calcurse-lang from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Translations for package calcurse | https://calcurse.org
- MacPorts - calcurse: normalized package name match | MacPorts ports tree: sysutils/calcurse/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing 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.
- [gettext](https://www.automicvault.com/pkg/brew/gettext/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [remind](https://www.automicvault.com/pkg/brew/remind/) - Shares av.db curated category or tags: calendar, cli, productivity, scheduling.
- [ccal](https://www.automicvault.com/pkg/brew/ccal/) - Shares av.db curated category or tags: calendar, cli, productivity.
- [ddate](https://www.automicvault.com/pkg/brew/ddate/) - Shares av.db curated category or tags: calendar, cli, productivity.
- [gcalcli](https://www.automicvault.com/pkg/brew/gcalcli/) - Shares av.db curated category or tags: calendar, cli, productivity.
- [hebcal](https://www.automicvault.com/pkg/brew/hebcal/) - Shares av.db curated category or tags: calendar, cli, productivity.
- [ical-buddy](https://www.automicvault.com/pkg/brew/ical-buddy/) - Shares av.db curated category or tags: calendar, cli, productivity.
- [jcal](https://www.automicvault.com/pkg/brew/jcal/) - Shares av.db curated category or tags: calendar, cli, productivity.
- [khal](https://www.automicvault.com/pkg/brew/khal/) - Shares av.db curated category or tags: calendar, cli, productivity.
- [diary](https://www.automicvault.com/pkg/brew/diary/) - Local package facts share a topical domain. Shared terms: based, caldav, calendar, cli, productivity.
- [byobu](https://www.automicvault.com/pkg/brew/byobu/) - Local package facts share a topical domain. Shared terms: based, cli, gettext, productivity, text.

## Combined YAML source

View the package source record on GitHub. [combined/calcurse.yml](https://github.com/automic-vault/db/blob/main/combined/calcurse.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
