gtk-perl

About GNOME · Users · Developers · Bindings

Intro

gtk2-perl is the collective name for a set of Perl bindings for Gtk+ versions 2.x and 3.x, as well as various related libraries. These modules make it easy to write Gtk and Gnome applications using a natural, perlish, object-oriented syntax.

Our documentation isn't what we'd like it to be, so don't code in a vacuum. The documentation that we have for the Gtk2 and Gtk3 modules is located on the documentation page.

For best results, discuss gtk2-perl with the authors on the gtk-perl mailing list, or in #gtk-perl on irc.gnome.org. If you're interested in helping us write documentation (reference, tutorials, HowTo's), join the list and let us know.

Please report any bugs with gtk2-perl in one of the two bug trackers:

Feel free to discuss bugs/issues on the gtk-perl mailing list

News

Glib::Object::Introspection 0.041 (stable) available
Fri, 25 Nov 2016 by Brian Manning

Overview of changes in Glib::Object::Introspection (stable) [2016-11-23]: Tweak the test environment to work with newer ExtUtils::MakeMaker; Use the stack in favor of heap allocation during marshalling; Use custom code to find struct methods in order to avoid a bug; Remove an unused internal variable; Add support for object class functions; Add support for marshalling GParamSpec; Add Glib::Object::Introspection::GValueWrapper::get_value. Glib::Object::Introspection is available via CPAN, or as a tarball from Sourceforge: http://downloads.sourceforge.net/gtk2-perl/Glib-Object-Introspection-0.041.tar.gz (http://bit.ly/2f9OVwC). Or view the source in the Gtk-Perl git repo: http://git.gnome.org/browse/perl-Glib-Object-Introspection/tag/?id=rel-0-04-1 (http://bit.ly/2f9OWAG)

Gtk3 0.030 available
Fri, 25 Nov 2016 by Brian Manning

Overview of changes in Gtk3 0.030 [2016-11-23]: Fix a test failure due to old CSS syntax; When marshalling key-value pairs, preserve their order; Add an override for Gtk3::Widget::style_get; Add overrides for the child property methods of Gtk3::Container; Add overrides for Gtk3::Widget::find_style_property and list_style_properties; Add overrides for Gtk3::Container::find_child_property and list_child_properties. Gtk3 is available via CPAN, or as a tarball from Sourceforge: http://downloads.sourceforge.net/gtk2-perl/Gtk3-0.030.tar.gz (http://bit.ly/2fr137R). Or view the source in the Gtk-Perl git repo: http://git.gnome.org/browse/perl-Gtk3/tag/?id=v0.030 (http://bit.ly/2fr91xG)

Gtk3 0.029 available
Fri, 25 Nov 2016 by Brian Manning

Overview of changes in Gtk3 0.029 [2016-09-30]: Docs: fix typo. Gtk3 is available via CPAN, or as a tarball from Sourceforge: http://downloads.sourceforge.net/gtk2-perl/Gtk3-0.029.tar.gz (http://bit.ly/2dx8nz0) Or view the source in the Gtk3-Perl git repo: http://git.gnome.org/browse/perl-Gtk3/tag/?id=v0.029 (http://bit.ly/2dx7NBg)

Gtk2 1.2499 (stable) available GTK-Perl
Fri, 25 Nov 2016 by Brian Manning

Overview of changes in Gtk2 1.2499 (stable) [2016-09-30]: Rename an internal variable to avoid confusion; Make the Gtk2::StatusIcon::position_menu tests more robust/lenient; Fix typos in POD (Bugzilla #760067). Gtk2 is available via CPAN, or as a tarball from Sourceforge: http://downloads.sourceforge.net/gtk2-perl/Gtk2-1.2499.tar.gz (http://bit.ly/2dfOcrE), or view the source in the Gtk2-Perl git repo: http://git.gnome.org/browse/perl-Gtk2/tag/?id=rel-1-24-99 (http://bit.ly/2dfODCc)

Glib 1.323 (stable) available
Fri, 25 Nov 2016 by Brian Manning

Overview of changes in Glib 1.323 (stable) [2016-09-30]: Fix typos (Bugzilla #760065); Docs: add missing blurbs for the benefit of 'whatis' (Bugzilla #753466). Glib is available via CPAN, or as a tarball from Sourceforge: http://downloads.sourceforge.net/gtk2-perl/Glib-1.323.tar.gz (http://bit.ly/2dx9dvD), Or view the source in the Gtk2-Perl git repo: http://git.gnome.org/browse/perl-Glib/tag/?id=rel-1-32-3 (http://bit.ly/2dx8z1h)

All news items

(the above stories are the top headlines from the project's sourceforge rss feed. you can still see the old, hand-maintained news items if you are looking for something that's no longer here.)

Modules

Module NameDescription
ExtUtils::Depends (MetaCPAN)Paolo Molaro's excellent utility from the original gtk-perl project
ExtUtils::PkgConfig (MetaCPAN)A super-simplistic front-end to pkg-config for Makefile.PLs
Glibwrappers for glib 2.x, including GObject, and a PkgConfig utility
Gtk2gtk+ 2.x (including Gdk, Pango, Cairo, and Atk), plus some tools to make wrapping GObject-based libraries eaiser
Gtk3 (MetaCPAN)gtk+ 3.x. This module allows you to write graphical user interfaces in a Perlish and object-oriented way, freeing you from the casting and memory management in C, yet remaining very close in spirit to original API.
Glib::Object::Introspection (MetaCPAN)Uses the gobject-introspection and libffi projects to dynamically create Perl bindings for a wide variety of libraries. Examples include gtk+, webkit, libsoup and many more.
Gnome2::Canvaslibgnomecanvas 2.x and libart
Gnome2libgnome 2.x and libgnomeui 2.x
Gtk2::GladeXMLlibglade 2.x
Gnome2::GConfthe GConf configuration database
Gnome2::Printlibgnomeprint and libgnomeprintui 2.2
Gnome2::VFSthe Gnome Virtual File System
Gnome2::Vtethe Gnome Virtual Terminal Emulator
Gnome2::Wnckthe Window Navigator Construction Kit
Gnome2::Rsvgthe RSVG library
Gtk2::MozEmbedthe Mozilla embedding widget
Gtk2::SourceViewthe GtkSourceView widget
GStreamerthe GStreamer library