macOS
brew install gtk-vnclocal Homebrew formula metadata
sudo port install gtk-vncMacPorts ports tree · gnome/gtk-vnc/Portfile · source: api.github.com
brew
VNC viewer widget for GTK. Version 1.5.0 via Homebrew; verified 2026-05-11.
install
brew install gtk-vnclocal Homebrew formula metadata
sudo port install gtk-vncMacPorts ports tree · gnome/gtk-vnc/Portfile · source: api.github.com
sudo apk add gtk-vncAlpine Linux edge package indexes · gtk-vnc · source: dl-cdn.alpinelinux.org
sudo apt install gir1.2-gtk-vnc-2.0Debian stable package indexes · gir1.2-gtk-vnc-2.0 · source: deb.debian.org
sudo dnf install gtk-vnc2Fedora Rawhide package metadata · gtk-vnc2 · source: dl.fedoraproject.org
nix profile install nixpkgs#gtk-vncnixpkgs package indexes · pkgs/by-name/gt/gtk-vnc/package.nix · source: api.github.com
sudo pacman -S gtk-vncArch Linux sync databases · gtk-vnc · source: geo.mirror.pkgbuild.com
sudo zypper install gtk-vnc-developenSUSE Tumbleweed package metadata · gtk-vnc-devel · source: download.opensuse.org
overview
VNC viewer widget for GTK
history
gtk-vnc is a GNOME-hosted VNC client library and GTK display widget. It packages the Remote Framebuffer/VNC protocol behind reusable C libraries, so downstream programs can embed a remote-desktop viewer instead of shelling out to a separate VNC client.
The GNOME wiki describes gtk-vnc as a VNC viewer widget for GTK built around coroutines so it can remain asynchronous while single-threaded. The same page documents the public GitLab repository and the GNOME source tarball location.
Early releases in the upstream NEWS file show the project maturing from the 0.3 line through GTK 2 and GTK 3 integration. The 0.3.8 release added Win32/MinGW portability and MS Logon authentication, while later 0.4 releases included GTK 3 support and removal of older GDK image/pixmap usage. The 0.5 and 0.6 lines added protocol, authentication, introspection, Python, Vala, and API refinements.
The 1.0.0 release in August 2019 marked a packaging and API boundary: Autotools was replaced with Meson, GTK 2 support was dropped, GTK 3 became mandatory, and the example/demo code was modernized. Later releases continued the library direction with desktop resize extensions, GNUTLS changes, macOS build fixes, gi-docgen API docs, coroutine portability work, and visible-cursor and authentication fixes.
The GNOME wiki explicitly names Vinagre, GNOME Boxes, and virt-viewer as gtk-vnc users. That is the adoption pattern that matters for packagers: gtk-vnc is not usually installed because users type its executable, but because virtualization, remote desktop, and GNOME applications need its libraries, introspection data, and small tools.
Distribution package names in the input show the same split role across ecosystems: some package the library as gtk-vnc, while Debian and Ubuntu expose GObject Introspection packages such as gir1.2-gtk-vnc-2.0 and RPM ecosystems often provide development packages for consumers that compile against the widget.
Applications embed gtk-vnc when they need a GTK widget that speaks VNC/RFB, handles authentication and encoding details, and participates naturally in a GTK application. Users may also encounter command-line helper programs such as gvnccapture, but the core value is the embeddable library.
The project history matters operationally because VNC clients sit at the edge of security, graphics, input, and portability. NEWS entries mention SASL, TLS certificate handling, VeNCrypt, MS Logon authentication, cursor encodings, HiDPI rendering, desktop resize extensions, and coroutine implementations for Unix, Windows, and macOS.
gtk-vnc is a classic dependency package: small on the surface, but it carries ABI, introspection, protocol, and toolkit-version consequences for remote-desktop stacks. It is important to package indexes because applications such as Boxes and virt-viewer depend on a stable embeddable VNC widget rather than reimplementing RFB.
It also captures GNOME platform migration history. The move from GTK 2 support to GTK 3-only in 1.0.0, from Autotools to Meson, and later from gtk-doc to gi-docgen mirrors broader GNOME packaging shifts.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
gvnccapture | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://gitlab.gnome.org/GNOME/gtk-vnc
install metadata
| Package key | brew:gtk-vnc |
|---|---|
| Version | 1.5.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/gtk-vnc |
| Homepage | https://gitlab.gnome.org/GNOME/gtk-vnc |
| Repository | https://gitlab.gnome.org/GNOME/gtk-vnc |
| Upstream docs | https://gitlab.gnome.org/GNOME/gtk-vnc |
| License | LGPL-2.1-or-later |
| Source archive | https://download.gnome.org/sources/gtk-vnc/1.5/gtk-vnc-1.5.0.tar.xz |
| Last updated | 2026-05-11T14:57:51-04:00 |
| Pulse | updated |
| Dependencies | cairo, gdk-pixbuf, gettext, glib, gmp, gnutls, gtk+3 |
| Build dependencies | gettext, gobject-introspection, meson, ninja, pkgconf |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | gtk-vnc |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
gir1.2-gtk-vnc-2.0 1.5.0-1
GObject introspection data for GTK-VNC
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install gir1.2-gtk-vnc-2.0gvncviewer 1.5.0-1
VNC viewer using gtk-vnc
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install gvncviewerlibgtk-vnc-2.0-0 1.5.0-1
VNC viewer widget for GTK+3 (runtime libraries)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgtk-vnc-2.0-0libgtk-vnc-2.0-dev 1.5.0-1
VNC viewer widget for GTK+3 (development files)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgtk-vnc-2.0-devlibgvnc-1.0-0 1.5.0-1
VNC GObject wrapper (runtime libraries)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgvnc-1.0-0libgvnc-1.0-dev 1.5.0-1
VNC GObject wrapper (development files)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgvnc-1.0-devgtk-vnc
nix profile install nixpkgs#gtk-vncgir1.2-gtk-vnc-2.0 1.3.1-1build2
GObject introspection data for GTK-VNC
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install gir1.2-gtk-vnc-2.0gvncviewer 1.3.1-1build2
VNC viewer using gtk-vnc
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install gvncviewerlibgtk-vnc-2.0-0 1.3.1-1build2
VNC viewer widget for GTK+3 (runtime libraries)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgtk-vnc-2.0-0libgtk-vnc-2.0-dev 1.3.1-1build2
VNC viewer widget for GTK+3 (development files)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgtk-vnc-2.0-devlibgvnc-1.0-0 1.3.1-1build2
VNC GObject wrapper (runtime libraries)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgvnc-1.0-0libgvnc-1.0-dev 1.3.1-1build2
VNC GObject wrapper (development files)
https://wiki.gnome.org/Projects/gtk-vnc
sudo apt install libgvnc-1.0-devgtk-vnc 1.5.0-r0
VNC viewer widget for GTK
https://gitlab.gnome.org/GNOME/gtk-vnc
sudo apk add gtk-vncgtk-vnc-dev 1.5.0-r0
VNC viewer widget for GTK (development files)
https://gitlab.gnome.org/GNOME/gtk-vnc
sudo apk add gtk-vnc-devgtk-vnc-doc 1.5.0-r0
VNC viewer widget for GTK (documentation)
https://gitlab.gnome.org/GNOME/gtk-vnc
sudo apk add gtk-vnc-docsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.