# 使用 Homebrew, dnf, MacPorts, Nix, pacman, apt, zypper 安装 libhandy

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

## 安装

```sh
sudo av install brew:libhandy
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install libhandy
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install libhandy
```

  证据: MacPorts ports tree: gnome/libhandy/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- dnf (92%):

```sh
sudo dnf install libhandy
```

  证据: Fedora Rawhide package metadata: libhandy from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#libhandy
```

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

- pacman (92%):

```sh
sudo pacman -S libhandy
```

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

- Ubuntu apt (92%):

```sh
sudo apt install gir1.2-handy-0.0
```

  证据: Ubuntu 24.04 LTS package indexes: gir1.2-handy-0.0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz

- zypper (92%):

```sh
sudo zypper install glade-catalog-libhandy
```

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

## 软件包事实

- **软件包键:** brew:libhandy
- **软件包管理器:** Homebrew
- **软件包管理器页面:** <https://formulae.brew.sh/formula/libhandy>
- **版本:** 1.8.3
- **来源摘要:** Building blocks for modern adaptive GNOME apps
- **主页:** <https://gitlab.gnome.org/GNOME/libhandy>
- **上游文档:** <https://gitlab.gnome.org/GNOME/libhandy>
- **许可证:** LGPL-2.1-or-later
- **源码归档:** <https://gitlab.gnome.org/GNOME/libhandy/-/archive/1.8.3/libhandy-1.8.3.tar.gz>
- **已生成:** 2026-08-04T22:13:35+00:00

## 可执行文件

- handy-1-demo (cli)
- handy-1-demo (别名)

## 依赖

- at-spi2-core
- cairo
- fribidi
- gdk-pixbuf
- gettext
- glib
- gtk+3
- harfbuzz
- pango

## 构建依赖

- gettext
- gobject-introspection
- meson
- ninja
- pkgconf
- vala

## 安装行为

- post-install 钩子: 未定义
- Bottle: 可用 于 arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, monterey, sonoma, ventura, x86_64_linux

## 版本和新鲜度

- 页面生成时间: 2026-08-04
- 管理器版本: 1.8.3
- 本地数据: OK
- 上游仓库: https://gitlab.gnome.org/GNOME/libhandy
- 信息: No package-manager update timestamp was available.
- 信息: Release/tag comparison is only available for GitHub repositories.
## 项目历史与用法

Libhandy is Purism and GNOME's GTK 3 widget library for adaptive applications, especially interfaces that need to work on both desktop windows and phone-sized screens. It is historically important because it bridged Librem 5 mobile work, mainstream GNOME applications, and the later GTK 4-era libadwaita direction.

### 项目历史

Purism's June 10, 2021 retrospective says Libhandy was created after experiments with mobile-specific and adaptive widgets showed that GTK developers needed a library they could include without modifying GTK itself. The name reflects Handy, the German word for a mobile phone, and the upstream README states the library's aim as helping develop mobile-device UI using GTK/GNOME.

The NEWS file records version 0.81.0 migrating the project to GNOME GitLab, archiving the previous source.puri.sm project, switching CI to GNOME infrastructure, and publishing reference documentation through GNOME GitLab Pages. The same release made documentation and Glade catalog installation parallel-installable with libhandy 0.0, a packaging-friendly move during API transition.

### 采用历史

Libhandy began as part of Purism's Librem 5 effort, but Purism described it as quickly gaining popularity among GNOME application developers and being used by both third-party GNOME apps and core apps such as Settings, Files, and Web. It became an unofficial high-level widget layer above GTK before the GTK 4 work was redirected into libadwaita.

The batch input lists packages for Homebrew, Fedora, MacPorts, Nix, Arch, Ubuntu, and openSUSE, showing that Libhandy's adaptive-widget role crossed from phone-oriented development into general distribution packaging.

### 使用方式

Developers use Libhandy to add adaptive GTK 3 widgets such as leaflet, carousel, view switcher, preferences, deck, flap, keypad, and other interface pieces. The handy-1-demo executable is the package-level demonstration surface for trying those widgets.

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

Libhandy is a rare dependency whose history explains a platform transition: it made GNOME-on-phone work practical without forking the desktop ecosystem, then informed libadwaita as GTK 4 arrived. For package maintainers, it is also a compatibility library for GTK 3 applications that adopted adaptive GNOME UI patterns before moving to libadwaita.

### 时间线

- 2018: Purism and GNOME contributors were actively using Libhandy widgets for adaptive Librem 5 application work.
- Version 0.81.0: The project migrated to GNOME GitLab and started publishing reference documentation with GNOME GitLab Pages.
- Version 1.0.0: The NEWS file marked the 1.0 API line with no extra release-note changes.
- 2021-06-10: Purism described Libhandy's creation, GNOME adoption, and its relationship to libadwaita.

### Related projects

- GTK 3 is the toolkit targeted by Libhandy.
- GNOME applications such as Settings, Files, and Web are named by Purism as adopters of Libhandy-style adaptive UI work.
- libadwaita is the GTK 4-era successor direction described by Purism for GNOME's high-level adaptive widgets.
- The Librem 5 and Phosh ecosystem supplied much of the original mobile GNOME pressure that made Libhandy useful.

### 来源

- <https://formulae.brew.sh/formula/libhandy>
- <https://gitlab.gnome.org/GNOME/libhandy>
- <https://gitlab.gnome.org/GNOME/libhandy/-/raw/main/NEWS>
- <https://gitlab.gnome.org/GNOME/libhandy/-/raw/main/README.md>
- <https://gnome.pages.gitlab.gnome.org/libhandy/doc/main>
- <https://puri.sm/posts/making-a-platform-adaptive-for-everyone/>


## 安全说明

library-like package without higher-risk signals.

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

## 源数据库详情

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

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

- Nix - libhandy: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/libhandy/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - gir1.2-handy-0.0 - 0.0.13-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: gir1.2-handy-0.0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | GObject introspection files for libhandy | https://source.puri.sm/Librem5/libhandy
- Ubuntu apt - handy-0.0-examples - 0.0.13-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: handy-0.0-examples from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Example programs for libhandy | https://source.puri.sm/Librem5/libhandy
- Ubuntu apt - libhandy-0.0-0 - 0.0.13-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libhandy-0.0-0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Library with GTK widgets for mobile phones | https://source.puri.sm/Librem5/libhandy
- Ubuntu apt - libhandy-0.0-dev - 0.0.13-3build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libhandy-0.0-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Development files for libhandy | https://source.puri.sm/Librem5/libhandy
- dnf - libhandy - 1.8.3-16.fc45: normalized package name match | Fedora Rawhide package metadata: libhandy from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst | Building blocks for modern adaptive GNOME apps | https://gitlab.gnome.org/GNOME/libhandy
- dnf - libhandy-devel - 1.8.3-16.fc45: normalized package name match | Fedora Rawhide package metadata: libhandy-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/210a2053c8e007daf9ae39c2a21daaed9b2ddd07d63ecffa597050361e73650c-primary.xml.zst | Development files for libhandy | https://gitlab.gnome.org/GNOME/libhandy
- pacman - libhandy - 1.8.3-2: normalized package name match | Arch Linux sync databases: libhandy from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | GTK 3 UI elements for mobile devices | https://gitlab.gnome.org/GNOME/libhandy
- zypper - glade-catalog-libhandy - 1.8.3-2.4: normalized package name match | openSUSE Tumbleweed package metadata: glade-catalog-libhandy from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Glade catalog for libhandy | https://gitlab.gnome.org/GNOME/libhandy
- zypper - libhandy-1-0 - 1.8.3-2.4: normalized package name match | openSUSE Tumbleweed package metadata: libhandy-1-0 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | A GTK+ library to develop UI for mobile devices | https://gitlab.gnome.org/GNOME/libhandy
- zypper - libhandy-devel - 1.8.3-2.4: normalized package name match | openSUSE Tumbleweed package metadata: libhandy-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Source and header files for libhandy | https://gitlab.gnome.org/GNOME/libhandy
- zypper - libhandy-lang - 1.8.3-2.4: normalized package name match | openSUSE Tumbleweed package metadata: libhandy-lang from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Translations for package libhandy | https://gitlab.gnome.org/GNOME/libhandy
- zypper - typelib-1_0-Handy-1_0 - 1.8.3-2.4: normalized package name match | openSUSE Tumbleweed package metadata: typelib-1_0-Handy-1_0 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Introspection bindings for libhandy | https://gitlab.gnome.org/GNOME/libhandy
- MacPorts - libhandy: normalized package name match | MacPorts ports tree: gnome/libhandy/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## 相关链接

- [Terminal utility packages](https://pkg.so/zh-hans/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://pkg.so/zh-hans/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://pkg.so/zh-hans/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://pkg.so/zh-hans/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [glib](https://pkg.so/zh-hans/brew/glib/) - Runtime dependency declared by Homebrew.
- [harfbuzz](https://pkg.so/zh-hans/brew/harfbuzz/) - Runtime dependency declared by Homebrew.
- [gettext](https://pkg.so/zh-hans/brew/gettext/) - Runtime dependency declared by Homebrew.
- [pango](https://pkg.so/zh-hans/brew/pango/) - Runtime dependency declared by Homebrew.
- [cairo](https://pkg.so/zh-hans/brew/cairo/) - Runtime dependency declared by Homebrew.
- [gdk-pixbuf](https://pkg.so/zh-hans/brew/gdk-pixbuf/) - Runtime dependency declared by Homebrew.
- [fribidi](https://pkg.so/zh-hans/brew/fribidi/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://pkg.so/zh-hans/brew/pkgconf/) - Build dependency declared by Homebrew.
- [ninja](https://pkg.so/zh-hans/brew/ninja/) - Build dependency declared by Homebrew.
- [meson](https://pkg.so/zh-hans/brew/meson/) - Build dependency declared by Homebrew.
- [evince](https://pkg.so/zh-hans/brew/evince/) - Popular package that depends on this formula.
- [gitg](https://pkg.so/zh-hans/brew/gitg/) - Popular package that depends on this formula.
- [gtk4](https://pkg.so/zh-hans/brew/gtk4/) - Shares pkgdb curated category or tags: cli, developer-tools, gnome, gtk, widgets.
- [libxml2](https://pkg.so/zh-hans/brew/libxml2/) - Shares pkgdb curated category or tags: c-library, cli, developer-tools, gnome.
- [gtk+3](https://pkg.so/zh-hans/brew/gtk-3/) - Shares pkgdb curated category or tags: cli, developer-tools, gnome, gtk.
- [libxslt](https://pkg.so/zh-hans/brew/libxslt/) - Shares pkgdb curated category or tags: c-library, cli, developer-tools, gnome.
- [vte3](https://pkg.so/zh-hans/brew/vte3/) - Shares pkgdb curated category or tags: cli, developer-tools, gnome, gtk.
- [gspell](https://pkg.so/zh-hans/brew/gspell/) - Shares pkgdb curated category or tags: cli, developer-tools, gnome, gtk.
- [libdazzle](https://pkg.so/zh-hans/brew/libdazzle/) - Local package facts share a topical domain. Shared terms: at-spi2-core, cairo, cli, core, developer.

## Combined YAML source

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


## 来源

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