gtk-perl

About GNOME · Users · Developers · Bindings

Intro

gtk2-perl is the collective name for a set of perl bindings for Gtk+ 2.x and 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. 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

Next release deadline: Saturday, April 18th 2015 at 00:00 UTC
Sun, 29 Mar 2015 by Brian Manning

Based on the Gnome 3.15.x release calendar [1], I am setting the
deadline for code submissions for the next release of Gtk-Perl modules
to be Saturday, April 18th 2015, at 00:00 UTC. Full announcement: http://bit.ly/1EO6Euq

Glib::Object::Introspection 0.029 (unstable) available
Sun, 29 Mar 2015 by Brian Manning

Overview of changes in Glib::Object::Introspection 0.029 (unstable) [2015-03-25]: Hook up the generic Glib::Boxed constructor on load, not in setup(); Add support for marshalling GVariants; Add support for marshalling GArrays, GPtrArrays and GByteArrays; Support flat arrays when converting from C to Perl. NOTE: This is an unstable release of Glib::Object::Introspection, and as such, it won't show up in the "normal" CPAN index. The changes in this version require the most recent unstable release of the Glib Perl module (1.310) to be installed before installing this version of G:O:I. More CPAN installation info for this release can be found at http://bit.ly/1D2VyFk. Glib::Object::Introspection is available via CPAN, or as a tarball from Sourceforge http://downloads.sourceforge.net/gtk2-perl/Glib-Object-Introspection-0.029.tar.gz ( http://bit.ly/1Mcqrx3 ) or view the source in the Gtk2-Perl git repo http://git.gnome.org/browse/perl-Glib-Object-Introspection/tag/?id=rel-0-02-9 ( http://bit.ly/1Mcqrx7 ).

Next release deadline: Saturday, March 21st 2015 at 00:00 UTC
Sat, 07 Mar 2015 by Brian Manning

Based on the Gnome 3.15.x release calendar, the deadline for code submissions for the next release of Gtk-Perl modules will be Saturday, March 21st 2015, at 00:00 UTC. Full announcement: http://bit.ly/1BeluNf

Glib::Object::Introspection 0.028 available
Sat, 07 Mar 2015 by Brian Manning

Overview of changes in Glib::Object::Introspection [2015-02-25]: Harmonize the format of type names in error messages; Add a FIXME about a corner case of GInitiallyUnowned handling. Glib::Object::Introspection is available via CPAN, or as a tarball from Sourceforge: http://downloads.sourceforge.net/gtk2-perl/Glib-Object-Introspection-0.028.tar.gz (http://bit.ly/1vAVD1p) or view the source in the Gtk2-Perl git repo: http://git.gnome.org/browse/perl-Glib-Object-Introspection/tag/?id=rel-0-02-8 (http://bit.ly/1vAVBGw)

Next release deadline: Saturday, February 21st 2015 at 00:00 UTC
Fri, 30 Jan 2015 by Brian Manning

Based on the Gnome 3.15.x release calendar, I am setting the
deadline for code submissions for the next release of Gtk-Perl modules
to be Saturday, February 21st 2015, at 00:00 UTC. Full announcement: http://bit.ly/1ycfWOi

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