# Install x11vnc with Homebrew, apk, apt, dnf, Nix, pacman, zypper

VNC server for real X displays. Version 0.9.17 via Homebrew; verified 2026-05-11.

## Install

```sh
sudo av install brew:x11vnc
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install x11vnc
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add x11vnc
```

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

- Debian apt (92%):

```sh
sudo apt install x11vnc
```

  Evidence: Debian stable package indexes: x11vnc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install x11vnc
```

  Evidence: Fedora Rawhide package metadata: x11vnc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#x11vnc
```

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

- pacman (92%):

```sh
sudo pacman -S x11vnc
```

  Evidence: Arch Linux sync databases: x11vnc from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install tigervnc-x11vnc
```

  Evidence: openSUSE Tumbleweed package metadata: tigervnc-x11vnc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:x11vnc
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/x11vnc>
- **Version:** 0.9.17
- **Source summary:** VNC server for real X displays
- **Homepage:** <https://github.com/LibVNC/x11vnc>
- **Repository:** <https://github.com/LibVNC/x11vnc>
- **Upstream docs:** <https://github.com/LibVNC/x11vnc#readme>
- **License:** GPL-2.0-or-later WITH x11vnc-openssl-exception
- **Source archive:** <https://github.com/LibVNC/x11vnc/archive/refs/tags/0.9.17.tar.gz>
- **Last updated:** 2026-05-11T20:45:47Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- x11vnc (cli)
- x11vnc (alias)

## Dependencies

- libvncserver
- openssl@4

## Build dependencies

- autoconf
- automake
- pkgconf

## Uses from macOS

- libxcrypt

## 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: 0.9.17
- Package-manager updated: 2026-05-11
- Local data: ok
- Upstream repository: https://github.com/LibVNC/x11vnc
- Upstream latest detected: 0.9.17 (current)
## Project history and usage

x11vnc is a VNC server for real, already-running X11 displays rather than a server that creates a separate virtual desktop. Its niche is remote control of the desktop that is physically attached to a Unix or Linux workstation, filling for X11 the role that WinVNC historically filled on Windows.

The project is closely tied to LibVNCServer. The LibVNCServer project history describes x11vnc as starting from Johannes Schindelin's proof-of-concept and being turned by Karl Runge into a full application; the community version is now maintained in the LibVNC GitHub organization.

### Project history

x11vnc emerged in the early 2000s as a pragmatic bridge between the X Window System and the VNC remote-framebuffer protocol. Unlike Xvnc-style servers, which expose a new virtual display, x11vnc polls and exports an existing X server so a user or administrator can interact with the same desktop session that is visible on the machine's monitor.

Karl Runge's version became the recognizable x11vnc application, and copyright notices in the source identify his active period on the project through 2002-2010. Later maintenance moved into the LibVNC ecosystem, which is a natural home because x11vnc is both a user-facing tool and a showcase for LibVNCServer's embeddable server library.

### Adoption history

x11vnc became useful wherever administrators wanted to reach a live X11 session without changing how the machine was logged in: workstations, lab machines, kiosk-like systems, Sun Ray-style sessions, and small embedded displays. The README also documents extensions beyond ordinary X displays, including Mac OS X Aqua/Quartz, webcams, TV tuner devices, embedded Linux systems, and full IPv6 support.

Its adoption is partly explained by what it did not require. A user could keep a normal local desktop manager and attach VNC access to that session only when needed, rather than switching to a special VNC desktop server or teaching users a separate remote-login workflow.

### How it is used

Typical use is to run `x11vnc` on the machine with the target X session and then connect with any VNC viewer, usually on a VNC display number mapped from TCP port 5900. The tool supports common remote-access features such as password files, SSL/TLS, VeNCrypt, Unix account login, server-side scaling, Zeroconf advertising, and compatibility features for TightVNC and UltraVNC viewers.

Package users reach for x11vnc when they need to help a remote user, operate a graphical application that is already open, close programs cleanly, inspect a physical-console session, or expose a lightweight display from an embedded device. It belongs to the old but still practical Unix remote-desktop toolkit: small CLI, lots of flags, no new desktop session unless the user asks for one elsewhere.

### Why package nerds care

For package people, x11vnc is historically neat because it preserves the 'real display' remote-control model in the X11 world. It is not a general remote-desktop suite; it is the sharp tool that connects a VNC client to the framebuffer and input stream of an existing X desktop.

It also shows why library projects matter. LibVNCServer made it possible to build specialized VNC servers, and x11vnc became the canonical example that turned the library from proof-of-concept into a daily-use remote-administration command.

### Timeline

- 2001-2002: x11vnc appears as a VNC server for real X displays, with Karl Runge's application becoming the well-known implementation.
- 2002-2010: Karl Runge's source copyright period covers the main original x11vnc development era.
- 2010s: x11vnc maintenance continues as part of the LibVNCServer/LibVNC ecosystem.
- 2019-01-05: x11vnc 0.9.16 is released, the release commonly cited by downstream package histories.
- 2020s: The community source is hosted at `LibVNC/x11vnc` on GitHub.

### Related projects

- LibVNCServer is the library project that underpins x11vnc and other VNC servers.
- LibVNCClient is the companion client-side library in the same ecosystem.
- Xvnc and TigerVNC are related VNC server projects, but they more commonly create or manage virtual VNC sessions instead of exporting the already-running physical X display.
- KRFB is a KDE remote-desktop tool noted by LibVNCServer as an integration related to x11vnc.

### Sources

- <https://android.googlesource.com/platform/external/libvncserver/+/bec50fdbf6ec2d61edda4f69913f8a8331b8b364^/x11vnc/help.c>
- <https://directory.fsf.org/wiki/X11vnc>
- <https://github.com/LibVNC/x11vnc>
- <https://libvnc.github.io/>
- <https://man.archlinux.org/man/x11vnc.1>


## Security Notes

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



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Credential files

- Unix: ~/.vnc/passwd, ~/.vnc/passwdfile
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** x11vnc
- **Version Scheme:** 0
- **Revision:** 1
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - x11vnc - 0.9.17-1: normalized package name match | Debian stable package indexes: x11vnc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | VNC server to allow remote access to an existing X session | http://www.karlrunge.com/x11vnc/
- Nix - x11vnc: normalized package name match | nixpkgs package indexes: pkgs/by-name/x1/x11vnc/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - x11vnc - 0.9.16-10: normalized package name match | Ubuntu 24.04 LTS package indexes: x11vnc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | VNC server to allow remote access to an existing X session | http://www.karlrunge.com/x11vnc/
- apk - x11vnc - 0.9.17-r1: normalized package name match | Alpine Linux edge package indexes: x11vnc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | VNC server for real X displays | https://github.com/LibVNC/x11vnc
- apk - x11vnc-doc - 0.9.17-r1: normalized package name match | Alpine Linux edge package indexes: x11vnc-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | VNC server for real X displays (documentation) | https://github.com/LibVNC/x11vnc
- dnf - x11vnc - 0.9.17-3.fc44: normalized package name match | Fedora Rawhide package metadata: x11vnc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | VNC server for the current X11 session | https://github.com/LibVNC/x11vnc
- pacman - x11vnc - 1:0.9.17-1: normalized package name match | Arch Linux sync databases: x11vnc from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | VNC server for real X displays | https://github.com/LibVNC/x11vnc/
- zypper - tigervnc-x11vnc - 1.16.1-2.4: normalized package name match | openSUSE Tumbleweed package metadata: tigervnc-x11vnc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Wrapper that starts x0vncserver | https://tigervnc.org/
- zypper - x11vnc - 0.9.16-3.8: normalized package name match | openSUSE Tumbleweed package metadata: x11vnc from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | VNC Server for Real X Displays | https://github.com/LibVNC/x11vnc
- zypper - x11vnc-frontend - 0.9.16-3.8: normalized package name match | openSUSE Tumbleweed package metadata: x11vnc-frontend from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Simple GUI Frontend to x11vnc | https://github.com/LibVNC/x11vnc


## 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.
- [openssl@4](https://www.automicvault.com/pkg/brew/openssl-4/) - Runtime dependency declared by Homebrew.
- [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.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [gtk-vnc](https://www.automicvault.com/pkg/brew/gtk-vnc/) - Shares av.db curated category or tags: cli, networking, remote-access, remote-desktop, vnc.
- [tiger-vnc](https://www.automicvault.com/pkg/brew/tiger-vnc/) - Shares av.db curated category or tags: cli, networking, remote-access, remote-desktop, vnc.
- [vncsnapshot](https://www.automicvault.com/pkg/brew/vncsnapshot/) - Shares av.db curated category or tags: cli, networking, remote-access, remote-desktop, vnc.
- [freerdp](https://www.automicvault.com/pkg/brew/freerdp/) - Shares av.db curated category or tags: cli, networking, remote-desktop, x11.
- [gateway-go](https://www.automicvault.com/pkg/brew/gateway-go/) - Shares av.db curated category or tags: cli, networking, remote-access.
- [mosh](https://www.automicvault.com/pkg/brew/mosh/) - Shares av.db curated category or tags: cli, networking, remote-access.
- [mussh](https://www.automicvault.com/pkg/brew/mussh/) - Shares av.db curated category or tags: cli, networking, remote-access.
- [pssh](https://www.automicvault.com/pkg/brew/pssh/) - Shares av.db curated category or tags: cli, networking, remote-access.
- [shellinabox](https://www.automicvault.com/pkg/brew/shellinabox/) - Local metadata places this package in an adjacent workflow. Shared terms: access, cli, networking, openssl, openssl-4.
- [soapyremote](https://www.automicvault.com/pkg/brew/soapyremote/) - Local metadata places this package in an adjacent workflow. Shared terms: access, cli, networking, remote, remote-access.

## Combined YAML source

View the package source record on GitHub. [combined/x11vnc.yml](https://github.com/automic-vault/db/blob/main/combined/x11vnc.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- 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
