# 使用 Homebrew, apk, dnf, Nix, pacman, apt, zypper 安装 libjcat

查看 libjcat 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:libjcat
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install libjcat
```

  证据: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add libjcat
```

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

- dnf (92%):

```sh
sudo dnf install libjcat
```

  证据: Fedora Rawhide package metadata: libjcat 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#libjcat
```

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

- pacman (92%):

```sh
sudo pacman -S libjcat
```

  证据: Arch Linux sync databases: libjcat from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- Debian apt (92%):

```sh
sudo apt install gir1.2-jcat-1.0
```

  证据: Debian stable package indexes: gir1.2-jcat-1.0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- zypper (92%):

```sh
sudo zypper install jcat-tool
```

  证据: openSUSE Tumbleweed package metadata: jcat-tool from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## 软件包事实

- **软件包键:** brew:libjcat
- **软件包管理器:** Homebrew
- **版本:** 0.2.6
- **来源摘要:** Library for reading Jcat files
- **主页:** <https://github.com/hughsie/libjcat>
- **仓库:** <https://github.com/hughsie/libjcat>
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- jcat-tool (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 0.2.6
## 项目历史与用法

libjcat is a small GObject-oriented library and command-line tool for reading and writing gzip-compressed JSON catalog files. Its niche is software-integrity metadata: a Jcat file can collect checksums and detached signatures for the files in an archive, with support for SHA checksums, GPG signatures, and PKCS#7 signatures.

### 项目历史

Richard Hughes published libjcat as a standalone project in 2020, splitting a catalog-signature concern that matters to firmware distribution into a reusable library. The README describes the format as equivalent in purpose to Microsoft Windows catalog files, but represented as gzipped JSON divided into JcatFile, JcatItem, and JcatBlob objects.

The project grew around firmware-update workflows. Its examples show firmware payloads and metainfo XML carried as catalog items, then signed or verified with local self-signing keys, explicit public keys, or imported detached signatures.

### 采用历史

libjcat matters mostly because of fwupd and the Linux Vendor Firmware Service ecosystem. fwupd documentation explains that LVFS adds a .jcat file to uploaded firmware archives so original firmware and metadata are not modified while checksums and detached signatures remain verifiable.

Homebrew, Debian, Fedora, Arch, Nix, Alpine, Ubuntu, and openSUSE package it, which reflects its role as a small shared dependency for firmware and software-integrity tooling rather than as an end-user application.

### 使用方式

Users usually meet libjcat through jcat-tool, which can create a catalog, add checksums, sign payloads, import detached signatures, export signature blobs, and verify a catalog against a public certificate. Version 2.0.0 added support for signing the checksum of a large payload instead of loading the whole payload for signature verification.

### 为什么软件包爱好者会关心

For package maintainers, libjcat is interesting because it packages a Windows-like catalog-signature idea in a Unix-friendly library with introspection bindings and a tiny CLI. It is one of those dependencies that looks obscure until a firmware update path needs detached integrity metadata that survives archive repacking.

### 时间线

- 2020-03-23: libjcat 0.1.0 release commit.
- 2020: README examples document firmware.bin and firmware.metainfo.xml as typical Jcat archive items.
- 2022-03-22: libjcat 0.1.11 release commit.
- 2023-12-15: README examples document signing the checksum target for large payloads, noting the feature requires JCat 2.0.0 or newer.

### Related projects

- fwupd and LVFS are the most visible related projects because they use Jcat files for firmware metadata and payload signature handling. GnuTLS certtool, GPG, PKCS#7, and AppStream-style firmware metadata sit around the same workflow.

### 来源

- <https://formulae.brew.sh/formula/libjcat>
- <https://github.com/fwupd/fwupd/blob/main/docs/only-trusted.md>
- <https://github.com/hughsie/libjcat>
- <https://github.com/hughsie/libjcat/releases>


## 安全说明

library-like package without higher-risk signals.

- **Geiger 风险:** 绿色 / 低
- library-like package without higher-risk signals

## 其他软件包管理器记录

- Debian apt - gir1.2-jcat-1.0 - 0.2.3-1: normalized package name match | Debian stable package indexes: gir1.2-jcat-1.0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | GObject introspection data for libjcat | https://github.com/hughsie/libjcat
- Debian apt - jcat - 0.2.3-1: normalized package name match | Debian stable package indexes: jcat from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | JSON catalog library tool | https://github.com/hughsie/libjcat
- Debian apt - libjcat-dev - 0.2.3-1: normalized package name match | Debian stable package indexes: libjcat-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | development files for libjcat | https://github.com/hughsie/libjcat
- Debian apt - libjcat-tests - 0.2.3-1: normalized package name match | Debian stable package indexes: libjcat-tests from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Installed tests for libjcat1 | https://github.com/hughsie/libjcat
- Debian apt - libjcat1 - 0.2.3-1: normalized package name match | Debian stable package indexes: libjcat1 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | JSON catalog library | https://github.com/hughsie/libjcat
- Nix - libjcat: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/libjcat/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - gir1.2-jcat-1.0 - 0.2.0-2build3: normalized package name match | Ubuntu 24.04 LTS package indexes: gir1.2-jcat-1.0 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | GObject introspection data for libjcat | https://github.com/hughsie/libjcat
- Ubuntu apt - jcat - 0.2.0-2build3: normalized package name match | Ubuntu 24.04 LTS package indexes: jcat from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | JSON catalog library tool | https://github.com/hughsie/libjcat
- Ubuntu apt - libjcat-dev - 0.2.0-2build3: normalized package name match | Ubuntu 24.04 LTS package indexes: libjcat-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | development files for libjcat | https://github.com/hughsie/libjcat
- Ubuntu apt - libjcat-tests - 0.2.0-2build3: normalized package name match | Ubuntu 24.04 LTS package indexes: libjcat-tests from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Installed tests for libjcat1 | https://github.com/hughsie/libjcat
- Ubuntu apt - libjcat1 - 0.2.0-2build3: normalized package name match | Ubuntu 24.04 LTS package indexes: libjcat1 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | JSON catalog library | https://github.com/hughsie/libjcat
- apk - libjcat - 0.2.3-r2: normalized package name match | Alpine Linux edge package indexes: libjcat from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Library for reading and writing Jcat files | https://github.com/hughsie/libjcat
- apk - libjcat-dev - 0.2.3-r2: normalized package name match | Alpine Linux edge package indexes: libjcat-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Library for reading and writing Jcat files (development files) | https://github.com/hughsie/libjcat
- apk - libjcat-doc - 0.2.3-r2: normalized package name match | Alpine Linux edge package indexes: libjcat-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Library for reading and writing Jcat files (documentation) | https://github.com/hughsie/libjcat
- apk - libjcat-tools - 0.2.3-r2: normalized package name match | Alpine Linux edge package indexes: libjcat-tools from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Library for reading and writing Jcat files | https://github.com/hughsie/libjcat
- dnf - libjcat - 0.2.6-1.fc45: normalized package name match | Fedora Rawhide package metadata: libjcat from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Library for reading Jcat files | https://github.com/hughsie/libjcat


## Combined YAML source

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