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

Curses development kit provides predefined curses widget for apps. Version 5.0-20260119 via Homebrew; verified 2026-05-17.

## Install

```sh
sudo av install brew:cdk
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install cdk
```

  Evidence: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install libcdk-java
```

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

- dnf (92%):

```sh
sudo dnf install cdk
```

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

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

- zypper (92%):

```sh
sudo zypper install cdk-devel
```

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

## Package facts

- **Package key:** brew:cdk
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/cdk>
- **Version:** 5.0-20260119
- **Source summary:** Curses development kit provides predefined curses widget for apps
- **Homepage:** <https://invisible-island.net/cdk/>
- **Upstream docs:** <https://invisible-island.net/cdk>
- **License:** X11-distribute-modifications-variant
- **Source archive:** <https://invisible-mirror.net/archives/cdk/cdk-5.0-20260119.tgz>
- **Last updated:** 2026-05-17T09:02:23-04:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- cdk5-config (cli)
- cdk5-config (alias)

## Uses from macOS

- ncurses

## 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: 5.0-20260119
- Package-manager updated: 2026-05-17
- Local data: ok
- Upstream repository: https://invisible-island.net/cdk/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

CDK, the Curses Development Kit, is a C curses widget library for building terminal user interfaces. Its official Invisible Island page describes it as a library of customizable curses widgets, similar in spirit to dialog but linked into applications.

### Project history

The project was originally written by Mike Glover in the mid-1990s. Thomas E. Dickey's official history identifies CDK 4.6.0, with source files dated January 20, 1996, as the earliest version he had encountered and notes that Glover announced it in comp.sources.unix in January 1996.

Dickey became involved after Glover asked in late 1998 about distributing CDK with ncurses. Dickey reviewed the 4.9.8 code, reworked build and licensing issues, continued cleanup work, and released CDK 5.0 in April 2005.

### Adoption history

The official history notes that CDK had already been built on several Unix systems, including Linux, SunOS, Solaris, HP-UX, AIX, and QNX 4. It also records ncurses mailing-list discussion from the late 1990s in which CDK was suggested to users wanting a higher-level interface than raw ncurses.

CDK's distribution history is tied to classic Unix source-package culture: comp.sources.unix announcements, QNX-hosted tarballs, ncurses-adjacent maintenance, and ports or packages across Unix-like systems.

### How it is used

CDK is used when a C program needs form, dialog, menu, scrolling-list, and other terminal widgets without building every curses interaction from scratch. The Homebrew package exposes cdk5-config for build flags and metadata.

### Why package nerds care

For package maintainers, CDK is interesting because it sits between low-level ncurses and full-screen TUI applications: it is a small library whose portability, ABI, licensing, and configure-script behavior mattered across many Unix packaging systems.

### Timeline

- 1996: CDK 4.6.0 announced in comp.sources.unix and distributed as source.
- 1998: Mike Glover asks Thomas E. Dickey about distributing CDK with ncurses.
- 1999: Dickey begins cleanup, configure-script work, and license repair.
- 2005: CDK 5.0 released by Dickey.

### Related projects

- CDK is closely related to curses and ncurses, and its official page compares its role to dialog while emphasizing that CDK is a linkable widget library rather than a standalone dialog program.

### Sources

- <https://invisible-island.net/cdk/>
- <https://invisible-island.net/cdk>
- <https://invisible-island.net/cdk/manpage>
- <https://formulae.brew.sh/api/formula/cdk.json>


## 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:** cdk
- **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 - libcdk-java - 1:2.11-1: normalized package name match | Debian stable package indexes: libcdk-java from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Chemistry Development Kit (CDK) Java libraries | https://cdk.github.io/
- Nix - cdk: normalized package name match | nixpkgs package indexes: pkgs/by-name/cd/cdk/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - libcdk-java - 1:2.9-1: normalized package name match | Ubuntu 24.04 LTS package indexes: libcdk-java from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Chemistry Development Kit (CDK) Java libraries | https://cdk.github.io/
- dnf - cdk - 5.0.20260119-2.fc45: normalized package name match | Fedora Rawhide package metadata: cdk from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Curses Development Kit | https://invisible-island.net/cdk/
- dnf - cdk-devel - 5.0.20260119-2.fc45: normalized package name match | Fedora Rawhide package metadata: cdk-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for cdk | https://invisible-island.net/cdk/
- dnf - cdk-doc - 5.0.20260119-2.fc45: normalized package name match | Fedora Rawhide package metadata: cdk-doc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Documentation and examples for cdk | https://invisible-island.net/cdk/
- zypper - cdk-devel - 5.0.20230201-1.7: normalized package name match | openSUSE Tumbleweed package metadata: cdk-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Development Part of Curses Development Kit | https://invisible-island.net/cdk/
- zypper - libcdk6_3_4 - 5.0.20230201-1.7: normalized package name match | openSUSE Tumbleweed package metadata: libcdk6_3_4 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | The Runtime for the Curses Development Kit - Shared library | https://invisible-island.net/cdk/


## 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.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [ncurses](https://www.automicvault.com/pkg/brew/ncurses/) - Shares av.db curated category or tags: c-library, cli, curses, developer-tools, libraries.
- [dialog](https://www.automicvault.com/pkg/brew/dialog/) - Shares av.db curated category or tags: cli, curses, developer-tools, terminal-ui, widgets.
- [expat](https://www.automicvault.com/pkg/brew/expat/) - Shares av.db curated category or tags: c-library, cli, developer-tools, libraries.
- [flowrs](https://www.automicvault.com/pkg/brew/flowrs/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui, tui.
- [fstrm](https://www.automicvault.com/pkg/brew/fstrm/) - Shares av.db curated category or tags: c-library, cli, developer-tools, libraries.
- [gitu](https://www.automicvault.com/pkg/brew/gitu/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui, tui.
- [gitui](https://www.automicvault.com/pkg/brew/gitui/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui, tui.
- [jqp](https://www.automicvault.com/pkg/brew/jqp/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui, tui.
- [otree](https://www.automicvault.com/pkg/brew/otree/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, terminal, terminal-ui.
- [cdk](https://www.automicvault.com/pkg/npm/cdk/) - Same normalized package name in another local ecosystem.

## Combined YAML source

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