# Install xwininfo with Homebrew, apk, dnf, MacPorts, Nix, zypper

Print information about windows on an X server. Version 1.1.7 via Homebrew; verified 2026-07-19. Also installable with nix: nix profile install nixpkgs#xwininfo.

## Install

```sh
sudo av install brew:xwininfo
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install xwininfo
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install xwininfo
```

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

### Linux

- apk (92%):

```sh
sudo apk add xwininfo
```

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

- dnf (92%):

```sh
sudo dnf install xwininfo
```

  Evidence: Fedora Rawhide package metadata: xwininfo 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#xwininfo
```

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

- zypper (92%):

```sh
sudo zypper install xwininfo
```

  Evidence: openSUSE Tumbleweed package metadata: xwininfo from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## Package facts

- **Package key:** brew:xwininfo
- **Package manager:** Homebrew
- **Version:** 1.1.7
- **Source summary:** Print information about windows on an X server
- **Homepage:** <https://gitlab.freedesktop.org/xorg/app/xwininfo>
- **Last updated:** 2026-07-19T21:12:39Z
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- xwininfo (alias)

## Install behavior

- Bottle: not available

## Freshness

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

xwininfo is the X.Org command-line utility for inspecting X windows. It prints selected window attributes such as id, geometry, depth, visual, children, window-manager hints, shape data, events, and recursive window trees.

### Project history

xwininfo belongs to the classic X11 application/tool set rather than to a separately branded application lineage. Its current X.Org README describes it plainly as a program that prints information about windows on an X server, with primary development in the xorg/app/xwininfo repository and questions directed to the Xorg mailing list.

The public cgit history shows the modern standalone module rooted in X.Org's early-2000s source imports: an X.Org baseline commit in 2003, XFree86 vendor imports in 2004, modular build-system work in 2005, and X11R7 packaging updates as X.Org split the monolithic tree into independently released modules.

Because xwininfo's job is to interrogate X server window state, its history follows X11's debugging culture: small tools such as xwininfo, xprop, xev, xlsclients, and xdpyinfo expose protocol and window-manager details that desktop users normally never see.

### Adoption history

xwininfo is widely packaged because it is basic X11 diagnostic equipment. Distributions ship it either as its own X.Org app package or as part of grouped X utilities; users reach for it when they need a window id, geometry, root-window data, child tree, or details for scripting around X clients.

Its adoption persists even as Wayland desktops grow, because Xwayland, remote X11, legacy window managers, CI display tests, and old Unix desktops still need simple command-line inspection of X windows.

### How it is used

Without an id or name, xwininfo lets the user click a target window and then prints default stats. Common scripted forms include `xwininfo -id 0x...`, `xwininfo -root`, `xwininfo -tree -root`, `xwininfo -name TITLE`, and `xwininfo -all` for a broader dump.

The manpage documents options for children/tree traversal, geometry and size, bits, events, window-manager hints, shape extension data, root-window inspection, and integer-vs-hex window ids.

### Why package nerds care

xwininfo is a package-nerd staple because it is one of the smallest ways to see the X server's model directly. It turns invisible protocol objects into text, which makes it useful in packaging tests, bug reports, shell scripts, window-manager debugging, and support docs.

It also illustrates the X.Org modularization story: a once-monolithic X utility became an independently versioned app module with its own repository, releases, and downstream package recipes.

### Timeline

- Pre-2000s: xwininfo exists as part of the traditional X/XFree86 utility set for inspecting X windows.
- 2003-11-14: X.Org cgit history records the R6.6 baseline import for this module.
- 2004: XFree86 vendor imports and X.Org merge history appear in the public repository lineage.
- 2005-07-08: Build-system work prepares xwininfo as an independent modular X.Org app package.
- 2005-12-21: Repository history records the X11R7 release package-version update.
- 2018: README is updated for the freedesktop.org GitLab migration.
- 2023-02-25: libxcb-errors support is added to improve X protocol error messages.
- 2025: Recent maintenance includes manpage fixes, `--help`/`--version` aliases, memory-leak fixes, and stdbool cleanup.

### Related projects

- X.Org and the X Window System: the display server/protocol stack inspected by xwininfo.
- xprop: companion utility for reading X window and root-window properties.
- xev: companion utility for observing X events.
- xdpyinfo, xlsclients, and xlsatoms: related X inspection utilities commonly referenced with xwininfo.
- Xlib, XCB, and libxcb-errors: libraries and protocol layers used around modern xwininfo behavior.

### Sources

- <https://cgit.freedesktop.org/xorg/app/xwininfo>
- <https://cgit.freedesktop.org/xorg/app/xwininfo/log/>
- <https://cgit.freedesktop.org/xorg/app/xwininfo/log/?ofs=100>
- <https://cgit.freedesktop.org/xorg/app/xwininfo/plain/README.md>
- <https://gitlab.freedesktop.org/xorg/app/xwininfo>
- <https://www.x.org/releases/current/doc/man/man1/xwininfo.1.xhtml>
- <https://www.x.org/wiki/>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Other Package-Manager Records

- Nix - xwininfo: normalized package name match | nixpkgs package indexes: pkgs/by-name/xw/xwininfo/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - xwininfo - 1.1.6-r0: normalized package name match | Alpine Linux edge package indexes: xwininfo from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Window information utility for X | https://cgit.freedesktop.org/xorg/app/xwininfo
- apk - xwininfo-doc - 1.1.6-r0: normalized package name match | Alpine Linux edge package indexes: xwininfo-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Window information utility for X (documentation) | https://cgit.freedesktop.org/xorg/app/xwininfo
- dnf - xwininfo - 1.1.7-2.fc45: normalized package name match | Fedora Rawhide package metadata: xwininfo from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | X window info utility | https://www.x.org
- zypper - xwininfo - 1.1.7-1.2: normalized package name match | openSUSE Tumbleweed package metadata: xwininfo from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Window information utility for X | http://xorg.freedesktop.org/
- MacPorts - xwininfo: normalized package name match | MacPorts ports tree: x11/xwininfo/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/xwininfo.yml](https://github.com/mxcl/pkgdb/blob/main/combined/xwininfo.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
