Use yad (yet another dialog) in shell scripts to displays GTK+ dialogs involving messages, lists, forms and several other commonly-used interface elements.
This project is an independent fork of the parent project.
This project is licensed under the GNU GPL3 license, see License and copyright section in this page.
Project goals:
- Overwhelmingly, maintain compatibility with GTK+-2.
- Build against either GTK+-2 or GTK+-3. The two builds provide the same features.
- Backport features from the parent project.
- Introduce original features.
100% compatibility with the parent project is not a goal but keeping reasonably compatible still informs my decisions. Feature comparison
Several Linux distributions that still depend on GTK+-2 include a binary derived from this fork.
The parent project removed GTK+-2 support in version 1.0. This repository was forked from the 0.42.0 release (d0021d0 February 2019) with the goal to continue GTK+-2 support, mainly for the benefit of the Fatdog64 Linux distribution. With time this fork has reached several other Linux distributions that need a GTK+-2 yad package.
In the spirit of a maintainance project, fixing bugs takes precedence. New features can be added as my time permits but only if they are tested with, and work equally well for, GTK+-2 and GTK+-3. New features are introduced as either backports from the parent project or, more rarely, as original features. You can read all about this in the feature comparison page.
Contributions and pull requests (PR) are always welcome!
This repository is named yad
, same as its parent project's. Both projects build a binary file named yad
.
Fatdog64 renames the binary yad_gtk2
or yad_gtk3
, according to the build, and only ships yad_gtk2
, with a symbolic link in /usr/bin from name yad
to target yad_gtk2
. The Fatdog64 package repository provides packages yad_gtk2
, yad_gtk3
, yad_doc
and yad_ultimate
, which is Fatdog64's package name for the parent project (and the parent project's binary is named yadu
).
For short I will use yadL for the products of this fork, and yadU for the parent project.
This fork's default branch is named maintain-gtk2
. All development takes place in the default branch.
Get the latest source code with command:
git clone https://github.com/step-/yad.git maintain-gtk2
Generate build scripts, configure and build the project:
cd maintain-gtk2 &&
git checkout maintain-gtk2 &&
autoreconf -ivf &&
intltoolize &&
./configure &&
make &&
: install with: make install
To build successfully you may need to install the following packages:
- GNU Autotools (https://www.gnu.org/software/autoconf/ https://www.gnu.org/software/automake/)
- Intltool >= 0.40.0 (https://freedesktop.org/wiki/Software/intltool/)
- GTK+-2 >= 2.24.0 (https://www.gtk.org)
- GTK+-3 >= 3.22.0 (https://www.gtk.org)
with appropriate -dev packages depending on your distro.
When you run configure
you can pass some options to build yad with the following libraries:
- GtkSourceView - for syntax highlighting in the text-info dialog (https://wiki.gnome.org/Projects/GtkSourceView)
- GtkSpell3 - for spell checkinging text fields (https://gtkspell.sourceforge.net/)
- Webkit - for the HTML dialog widget (https://webkitgtk.org)
Distributions known to package this fork: read distributions.