# Install i2util with Homebrew, apk, apt

Internet2 utility tools. Version 5.2.5 via Homebrew; verified 2026-05-18.

## Install

```sh
sudo av install brew:i2util
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install i2util
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add i2util
```

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

- Ubuntu apt (92%):

```sh
sudo apt install i2util-tools
```

  Evidence: Ubuntu 24.04 LTS package indexes: i2util-tools from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz

## Package facts

- **Package key:** brew:i2util
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/i2util>
- **Version:** 5.2.5
- **Source summary:** Internet2 utility tools
- **Homepage:** <https://github.com/perfsonar/i2util>
- **Repository:** <https://github.com/perfsonar/i2util>
- **Upstream docs:** <https://github.com/perfsonar/i2util#readme>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/perfsonar/i2util/archive/refs/tags/v5.2.5.tar.gz>
- **Last updated:** 2026-05-18T20:05:35Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- aespasswd (cli)
- pfstore (cli)
- aespasswd (alias)
- pfstore (alias)

## Build dependencies

- autoconf
- automake

## 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.2.5
- Package-manager updated: 2026-05-18
- Local data: ok
- Upstream repository: https://github.com/perfsonar/i2util
- Upstream latest detected: v5.2.5 (current)
## Project history and usage

i2util is an Internet2 and perfSONAR utility library and tool package. It provides common C support code for command-line parsing, error logging, threading, random numbers, hash tables, address handling, passphrase/key-file helpers, and the aespasswd and pfstore executables.

### Project history

The in-tree README says I2util began from utility code distributed with UCAR's volsh code and was reused because it was freely distributed. Internet2 then added local support for random numbers and hash tables, and the older ChangeLog shows the library being split and generalized for OWAMP and BWCTL-related code.

The ChangeLog records an import in April 2002, early work on error logging and command-line options, hash-table support, random-device handling, and later additions such as aespasswd, PBKDF2, HMAC-SHA1, SHA-1 tests, socket/address helpers, and standalone installability.

The GitHub repository was created in 2015 under the perfSONAR organization and uses tags in the v5.x series. The configure script identifies the package as I2util and points bug reports to the OWAMP/Internet2 side of the ecosystem.

### Adoption history

i2util's adoption is mostly indirect. The GitHub repository description says it is the command-line parsing, error logging, and threading library used by BWCTL, OWAMP, and other tools. It appears in package managers because those network-measurement packages and their helper commands need a shared utility layer.

Homebrew exposes aespasswd and pfstore, making the otherwise library-oriented package visible as a small CLI package for users working with perfSONAR or Internet2 measurement stacks.

### How it is used

Developers use i2util as a support library inside measurement tools. Operators encounter it through helper commands, especially aespasswd for managing key files and pfstore for passphrase storage workflows used by related Internet2 software.

The package is not a general-purpose end-user network tool; it is infrastructure glue for the perfSONAR and Internet2 family.

### Why package nerds care

i2util is package-nerd significant precisely because it is glue. It is the sort of small, old, C utility library that lets larger measurement tools remain consistent about logging, options, randomness, threading, and key handling across Unix-like systems.

Its history also preserves an older network-research packaging path: CVS-era ChangeLogs, autoconf, static libraries, manpages, RPM/package work, and later migration into GitHub and Homebrew formulas.

### Timeline

- 2002: I2util was imported from volsh-derived utility code and began as a reusable library.
- 2003: aespasswd support was added for managing key files.
- 2007: ChangeLog entries describe making I2util a standalone installable library for BWCTL and OWAMP packaging.
- 2015: The perfSONAR GitHub repository was created.
- 2026: Homebrew tracked the v5.2.5 source tag.

### Related projects

- Related projects include perfSONAR, BWCTL, OWAMP, Internet2's historical measurement tools, UCAR volsh, and the perfSONAR unibuild packaging system.

### Sources

- <https://formulae.brew.sh/formula/i2util>
- <https://github.com/perfsonar/i2util>
- <https://raw.githubusercontent.com/perfsonar/i2util/master/I2util/I2util/ChangeLog>
- <https://raw.githubusercontent.com/perfsonar/i2util/master/I2util/I2util/README.md>
- <https://raw.githubusercontent.com/perfsonar/i2util/master/I2util/I2util/configure.ac>


## Security Notes

No matching local secret-handling manifest was found for i2util. Nucleus package metadata is still published here so future coverage has a stable package URL.


## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** i2util
- **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

- Ubuntu apt - i2util-tools - 1.6-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: i2util-tools from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Internet2 utility tools | https://github.com/perfsonar/i2util
- Ubuntu apt - libi2util-dev - 1.6-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libi2util-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Internet2 utility library (development files) | https://github.com/perfsonar/i2util
- apk - i2util - 4.2.1-r1: normalized package name match | Alpine Linux edge package indexes: i2util from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Internet2 utility library | https://github.com/perfsonar/i2util
- apk - i2util-dev - 4.2.1-r1: normalized package name match | Alpine Linux edge package indexes: i2util-dev from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Internet2 utility library (development files) | https://github.com/perfsonar/i2util
- apk - i2util-doc - 4.2.1-r1: normalized package name match | Alpine Linux edge package indexes: i2util-doc from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Internet2 utility library (documentation) | https://github.com/perfsonar/i2util


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [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.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [autoconf](https://www.automicvault.com/pkg/brew/autoconf/) - Build dependency declared by Homebrew.
- [automake](https://www.automicvault.com/pkg/brew/automake/) - Build dependency declared by Homebrew.
- [owamp](https://www.automicvault.com/pkg/brew/owamp/) - Popular package that depends on this formula.
- [ooniprobe](https://www.automicvault.com/pkg/brew/ooniprobe/) - Shares av.db curated category or tags: cli, measurement, network-measurement, networking.
- [inetutils](https://www.automicvault.com/pkg/brew/inetutils/) - Shares av.db curated category or tags: cli, networking, utilities.
- [macchanger](https://www.automicvault.com/pkg/brew/macchanger/) - Shares av.db curated category or tags: cli, networking, utilities.
- [subnetcalc](https://www.automicvault.com/pkg/brew/subnetcalc/) - Shares av.db curated category or tags: cli, networking, utilities.
- [flowgrind](https://www.automicvault.com/pkg/brew/flowgrind/) - Shares av.db curated category or tags: cli, network-measurement, networking.
- [scamper](https://www.automicvault.com/pkg/brew/scamper/) - Shares av.db curated category or tags: cli, network-measurement, networking.
- [activemq](https://www.automicvault.com/pkg/brew/activemq/) - Shares av.db curated category or tags: cli, networking.
- [iproute2mac](https://www.automicvault.com/pkg/brew/iproute2mac/) - Local metadata places this package in an adjacent workflow. Shared terms: cli, network, networking, utilities.

## Combined YAML source

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