# tkrzw を Homebrew, dnf, Nix, apt でインストール

tkrzw のインストール経路、実行ファイル、メタデータ、AI エージェント向けセキュリティノートを確認します。

## インストール

```sh
sudo av install brew:tkrzw
```

追加のインストールコマンド:

### macOS

- Homebrew (100%):

```sh
brew install tkrzw
```

  証拠: local Homebrew formula metadata

### Linux

- dnf (92%):

```sh
sudo dnf install tkrzw
```

  証拠: Fedora Rawhide package metadata: tkrzw from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#tkrzw
```

  証拠: nixpkgs package indexes: pkgs/by-name/tk/tkrzw/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- Debian apt (92%):

```sh
sudo apt install libtkrzw-dev
```

  証拠: Debian stable package indexes: libtkrzw-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

## パッケージ情報

- **パッケージキー:** brew:tkrzw
- **パッケージマネージャ:** Homebrew
- **バージョン:** 1.0.32
- **ソース概要:** Set of implementations of DBM
- **ホームページ:** <https://dbmx.net/tkrzw/>
- **生成日時:** 2026-08-03T19:37:03+00:00

## 実行可能ファイル

- tkrzw_build_util (エイリアス)
- tkrzw_dbm_perf (エイリアス)
- tkrzw_dbm_tran (エイリアス)
- tkrzw_dbm_util (エイリアス)
- tkrzw_file_perf (エイリアス)
- tkrzw_langc_check (エイリアス)
- tkrzw_str_perf (エイリアス)
- tkrzw_ulog_util (エイリアス)

## インストール挙動

- Bottle: 利用不可

## バージョンと鮮度

- ページ生成日: 2026-08-03
- マネージャ版: 1.0.32
## プロジェクトの歴史と使われ方

Tkrzw is Mikio Hirabayashi's C++17 DBM library: a family of embedded key-value database implementations with command-line utilities, language bindings, and a lineage connected to QDBM, Tokyo Cabinet, and Kyoto Cabinet.

### プロジェクトの歴史

The official DBMx documentation defines DBM as persistent associative-array storage and presents Tkrzw as a C++ library implementing DBM with multiple algorithms. Its database classes include hash, tree, skip-list, in-memory, cache, standard-library-backed, polymorphic, sharded, asynchronous, and secondary-index implementations.

Tkrzw is explicitly documented as the successor to Kyoto Cabinet, Tokyo Cabinet, and QDBM, but with changed APIs and data formats rather than compatibility with those predecessors. That makes it part of a long-running family of compact embedded key-value stores associated with Hirabayashi's earlier database work.

The repository README points to the DBMx documentation as the main document and documents Unix-like and Windows build paths. The official site emphasizes portability across Unix-like systems and Windows, dependency injection for file implementations, and language interfaces for C, Java, Python, Ruby, and Go.

### 採用の歴史

Tkrzw's adoption is strongest among developers who need an embedded ordered or hash key-value store with predictable local-file behavior rather than a network database. Its package-manager footprint in the supplied facts includes Homebrew, Debian/Ubuntu libtkrzw-dev, Fedora/dnf, and Nix.

The ChangeLog shows sustained maintenance through the 1.0.x series, including interface compatibility notes for Java, Python, Ruby, and Go bindings. Releases in 2021 rapidly expanded durability, direct I/O, page cache, transaction, and update-log capabilities; later releases added search, encryption/compression, index, and C interface improvements.

### 使われ方

Tkrzw is used as an embedded library by C++ programs and through language bindings when an application wants persistent key-value records in local files. The official documentation describes shared APIs for opening, setting, getting, removing, iterating, processing records atomically, rebuilding, and restoring databases.

The package also ships command-line utilities such as tkrzw_dbm_util and tkrzw_dbm_perf. For package users, these utilities make it inspectable and benchmarkable from the terminal, which is important for comparing DBM engines and debugging file-based stores.

### パッケージ好きにとっての重要性

Tkrzw is significant because it continues a recognizable lineage of Japanese DBM libraries that have long appeared in Unix packaging systems. It is the modern C++17 member of a family package maintainers may remember from QDBM, Tokyo Cabinet, Kyoto Cabinet, and Kyoto Tycoon.

It is also a package-nerd kind of database: not a service to supervise, but a library plus CLI tools whose value depends on headers, pkg-config metadata, language bindings, ABI versioning, and careful release packaging.

### タイムライン

- 2021-05: ChangeLog shows rapid 0.9.x releases adding direct I/O, page cache, transaction, and recovery work.
- 2021-09: ChangeLog shows update-log and message-queue utilities added around the 1.0.14 release.
- 2023-03: ChangeLog lists 1.0.27 with AES encryption support in the compressor path.
- 2024-10-22: ChangeLog lists release 1.0.32 and library version 1.75.0.

### Related projects

- QDBM, Tokyo Cabinet, and Kyoto Cabinet are the documented predecessors whose lineage Tkrzw succeeds without API or data-format compatibility.
- Tkrzw-RPC is the related DBMx service for sharing Tkrzw databases over gRPC.
- tkrzw-java, tkrzw-python, tkrzw-ruby, and tkrzw-go are separately packaged language interfaces named by the official documentation and ChangeLog.

### ソース

- <https://dbmx.net/tkrzw/ official overview, DBM explanation, supported classes, utilities, portability, language interfaces, FAQ lineage, and Tkrzw-RPC note>
- <https://github.com/estraier/tkrzw README for repository identity and build/install behavior>
- <https://github.com/estraier/tkrzw/blob/master/ChangeLog for release history and language-interface compatibility notes>
- source_facts.package-manager for Homebrew, Debian/Ubuntu, dnf, and Nix packaging


## セキュリティノート

narrow executable package without higher-risk signals.

- **Geiger リスク:** グリーン / 低
- narrow executable package without higher-risk signals

## 他のパッケージマネージャ記録

- Debian apt - libtkrzw-dev - 1.0.32-1+b1: normalized package name match | Debian stable package indexes: libtkrzw-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | set of implementations of DBM - development headers | https://dbmx.net/tkrzw/
- Debian apt - libtkrzw1t64 - 1.0.32-1+b1: normalized package name match | Debian stable package indexes: libtkrzw1t64 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | set of implementations of DBM - shared library | https://dbmx.net/tkrzw/
- Debian apt - tkrzw-doc - 1.0.32-1: normalized package name match | Debian stable package indexes: tkrzw-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | set of implementation of DBM - docs | https://dbmx.net/tkrzw/
- Debian apt - tkrzw-utils - 1.0.32-1+b1: normalized package name match | Debian stable package indexes: tkrzw-utils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | set of implementations of DBM - utilities | https://dbmx.net/tkrzw/
- Nix - tkrzw: normalized package name match | nixpkgs package indexes: pkgs/by-name/tk/tkrzw/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - libtkrzw-dev - 1.0.27-1.1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libtkrzw-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | set of implementations of DBM - development headers | https://dbmx.net/tkrzw/
- Ubuntu apt - libtkrzw1t64 - 1.0.27-1.1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libtkrzw1t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | set of implementations of DBM - shared library | https://dbmx.net/tkrzw/
- Ubuntu apt - tkrzw-doc - 1.0.27-1.1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: tkrzw-doc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | set of implementation of DBM - docs | https://dbmx.net/tkrzw/
- Ubuntu apt - tkrzw-utils - 1.0.27-1.1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: tkrzw-utils from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | set of implementations of DBM - utilities | https://dbmx.net/tkrzw/
- dnf - tkrzw - 1.0.32-5.fc45: normalized package name match | Fedora Rawhide package metadata: tkrzw from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | A straightforward implementation of DBM | https://dbmx.net/tkrzw/
- dnf - tkrzw-devel - 1.0.32-5.fc45: normalized package name match | Fedora Rawhide package metadata: tkrzw-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Development files for Tkrzw | https://dbmx.net/tkrzw/
- dnf - tkrzw-doc - 1.0.32-5.fc45: normalized package name match | Fedora Rawhide package metadata: tkrzw-doc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Tkrzw API documentation | https://dbmx.net/tkrzw/
- dnf - tkrzw-libs - 1.0.32-5.fc45: normalized package name match | Fedora Rawhide package metadata: tkrzw-libs from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Libraries for applications using Tkrzw | https://dbmx.net/tkrzw/


## Combined YAML source

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


## ソース

- 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
