# Install libdivecomputer with Homebrew, MacPorts, Nix

Library for communication with various dive computers. Version 0.9.0 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#libdivecomputer.

## Install

```sh
sudo av install brew:libdivecomputer
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install libdivecomputer
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install libdivecomputer
```

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

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#libdivecomputer
```

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

## Package facts

- **Package key:** brew:libdivecomputer
- **Package manager:** Homebrew
- **Version:** 0.9.0
- **Source summary:** Library for communication with various dive computers
- **Homepage:** <https://www.libdivecomputer.org/>
- **Repository:** <https://github.com/libdivecomputer/libdivecomputer>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- dctool (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.9.0
## Project history and usage

libdivecomputer is a cross-platform C library and utility set for talking to dive computers over serial, USB, USB HID, IrDA, Bluetooth Classic, and Bluetooth Low Energy transports. Its official site frames it as an open source compatibility layer across many dive-computer manufacturers rather than as an end-user dive log application.

### Project history

The project grew around the practical problem of extracting dive profiles from vendor-specific dive computers on Unix-like systems, Windows, mobile platforms, and BSDs. The repository README points to the libdivecomputer site and a SourceForge project page, reflecting the project's older open-source hosting history before GitHub became the main development surface.

The public tag history shows a 0.2.0 release in September 2012, followed by 0.3.0 in February 2013, 0.4.x in 2013-2014, 0.5.0 in September 2016, 0.6.0 in November 2017, 0.7.0 in May 2021, 0.8.0 in May 2023, and 0.9.0 in June 2025.

### Adoption history

libdivecomputer's adoption comes from being infrastructure: applications and scripts can use one library instead of maintaining per-device protocols for Aeris, Aqualung, Cressi, Mares, Oceanic, Shearwater, Suunto, Uwatec, and many other supported manufacturers. Homebrew, MacPorts, and Nix packaging make that hardware-support layer easy to install for developers and technically inclined divers.

### How it is used

The documentation describes a conventional autotools build on Unix platforms and points users to a manual, manpages, examples, backend status, driver notes, roadmap material, and old API design discussions. The packaged `dctool` utility is the command-line face of the library for testing communication and retrieving data.

### Why package nerds care

For package maintainers, libdivecomputer is interesting because it turns a messy hardware matrix into one LGPL library with optional platform transport details. It is the kind of package that quietly matters: most users meet it indirectly through dive-log software, but distribution packaging determines whether niche USB/Bluetooth dive-computer workflows work out of the box.

### Timeline

- 2012: v0.2.0 tag published on GitHub.
- 2013: v0.3.0 and v0.4.0 tags published.
- 2016: v0.5.0 tag published.
- 2017: v0.6.0 tag published.
- 2021: v0.7.0 tag published.
- 2023: v0.8.0 release published.
- 2025: v0.9.0 release published.

### Related projects

- The repository README identifies the older SourceForge project page as part of the project's public footprint. The documentation also points to bundled examples and manpages, while the official site lists the supported device families that drive the library's backend work.

### Sources

- <https://github.com/libdivecomputer/libdivecomputer>
- <https://github.com/libdivecomputer/libdivecomputer/releases>
- <https://github.com/libdivecomputer/libdivecomputer/tags>
- <https://www.libdivecomputer.org/>
- <https://www.libdivecomputer.org/documentation.html>


## Security Notes

library-like package without higher-risk signals.

- **Geiger risk:** green / low
- library-like package without higher-risk signals

## Other Package-Manager Records

- Nix - libdivecomputer: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/libdivecomputer/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- MacPorts - libdivecomputer: normalized package name match | MacPorts ports tree: devel/libdivecomputer/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/libdivecomputer.yml](https://github.com/mxcl/pkgdb/blob/main/combined/libdivecomputer.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
