Zenity

Free software for dialog boxes From Wikipedia, the free encyclopedia

Zenity is a free software and cross-platform computer program that allows the execution of GTK dialog boxes in command-line and shell scripts.

DevelopersGlynn Foster
Lucas Rocha
Stable release
4.2.1[1] Edit this on Wikidata / 7 November 2025; 4 months ago (7 November 2025)
Quick facts Original author, Developers ...
Zenity
Original authorSun Microsystems
DevelopersGlynn Foster
Lucas Rocha
Stable release
4.2.1[1] Edit this on Wikidata / 7 November 2025; 4 months ago (7 November 2025)
Operating systemUnix-like
LicenseGNU Lesser General Public License
Websitegitlab.gnome.org/GNOME/zenity
Repository
Close

Description

Like tools such as whiptail and dialog, Zenity allows easy creation of GUIs,[2] though it has fewer features than more complex GUI-creation tools.[3]

Other scripting languages such as Perl and Python can be used to construct full-scale GUI applications, but the zenity program enables a shell script to interact with a GUI user.... [The] user interface is not as refined as one that could be provided by a full-featured GUI application, but it is perfectly suitable for simple interactions.

Chris Tyler[4]

Cross-platform compatibility

As of 2012, Zenity is available for Linux, BSD and Windows.[5] A Zenity port to Mac OS X is available in MacPorts and Homebrew.

As of 2018, Zenity ports for Windows are available: zenity-windows (based on version 3.20.0) and winzenity (based on 3.8.0 / statically linked)

Zenity does not possess any built-in scripting capabilities and it must, therefore, rely on an interpreter for processing. One option is Python in combination with the PyZenity library.[6]

Examples

Python example

from PyZenity import InfoMessage
from PyZenity import Question
from PyZenity import ErrorMessage

choice = Question("Please press a button.")

if choice:
    InfoMessage("You pressed Yes!")
else:
    ErrorMessage("You pressed No!")

POSIX shell script example

#!/bin/sh

if zenity --question --text="Please press a button."; then
zenity --info --text="You pressed Yes\!"
else
zenity --error --text="You pressed No\!"
fi

Windows shell script example

@echo off
zenity --question --ok-label="Yes" --cancel-label="No" --text="Please press a button."
if %ERRORLEVEL% == 1 goto error
zenity --info --text="You pressed Yes!"
goto end
:error
zenity --error --text="You pressed No!"
:end

See also

References

Related Articles

Wikiwand AI