Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A set of bindings for the GNOME-2.x libraries to use from Ruby.
C Ruby R CSS Shell C++

glib2: bind GBinding

GitHub: fix #524

Reported by cedlemo. Thanks!!!
latest commit 05a8187570
@kou kou authored
Failed to load latest commit information.
atk windows: use "windows" instead of "win32"
build build windows: update to the latest Rubies
cairo-gobject windows: require top_dir
clutter-gstreamer clutter-gstreamer: don't run on Travis CI
clutter-gtk clutter-gtk test: don't run if typelib doesn't exist
clutter clutter test: remove needless argument
gdk3-no-gi windows: require top_dir
gdk3 gdk3: add deprecation for Gdk::Event::CURRENT_TIME
gdk_pixbuf2 windows: use "windows" instead of "win32"
gio2 gio2: add ActionMap#add_actions
glib2 glib2: bind GBinding
gobject-introspection gi: support Ruby -> GVariant
gstreamer Fix shebang
gtk2 gtk2 test: remove needless code
gtk3-no-gi reset modifications in gtk3-no-gi/test/test_gtk_icon_view.rb, fix ico…
gtk3 Add Builder instructions
gtksourceview2 windows: require top_dir
gtksourceview3-no-gi Revert "gtksourceview3-no-gi: rename gtksourceview3-no-gi/ext/gtksour…
gtksourceview3 gtksourceview3 test: use meaningful name
gvlc windows: use "windows" instead of "win32"
pango pango: don't install a file that is no longer made
poppler poppler windows: upgrade Poppler to 0.29.0
rsvg2 Update svg-viewer.rb
vte windows: use "windows" instead of "win32"
vte3-no-gi Revert "vte3: vte3-no-gi/ext/vte3/ -> vte3-no-gi/ext/vte3-no-gi"
vte3 Fix typo
webkit-gtk webkit-gtk: sink newly created floating object
webkit-gtk2 webkit-gtk2 test: omit if typelib doesn't exist
webkit2-gtk webkit2-gtk: omit when WebKit2 typelib file doesn't exist
.dir-locals.el windows: use "windows" instead of "win32"
.gitignore Generate gresource automaticaly for Gtk::Builder tests
.travis.yml travis: enable Ruby 2.1 again
AUTHORS Updated news for upcoming release, tagged binding version as 0.17.0
COPYING.GFDL gtk3: use GFDL for script that is based on PyGObject-Tutorial
COPYING.LIB Update LGPL 2.1 files
Gemfile support Gemfile.local.
Gemfile.local.sample support Gemfile.local.
NEWS Add 2.2.5 entry gtk3: use GFDL for script that is based on PyGObject-Tutorial
Rakefile Update to the latest Rubies
exec_make.rb * extconf.rb, exec_make.rb: Support MSVC++(nmake).
extconf.rb Don't build deprecated no-GI based libraries
release.rd windows: use "windows" instead of "win32"
run-test.rb Simplify travis: install dbus-launch


Build Status

Ruby-GNOME2 -- Ruby bindings for GNOME-2.x

This is a set of bindings for the GNOME-2.x and GNOME-3.x libraries to use from Ruby 2.0.0, 2.1 and 2.2.

Release packages


  • Ruby/GLib2: GLib 2.12.x or later
  • Ruby/ATK: ATK 1.12.x or later
  • Ruby/Pango: Pango 1.14.x or later
  • Ruby/GdkPixbuf2: GTK+ 2.0.x or later
  • Ruby/GTK2: GTK+ 2.10.x or later
  • Ruby/GObjectIntrospection: GObject Introspection 1.32.1 or later


  • ruby-gtk2 - Ruby/GTK2
  • Ruby/GDK3: GTK+ 3.4.2 or later
  • Ruby/GTK3: GTK+ 3.4.2 or later


  • ruby-gtk2 + ruby-gtk3
  • Ruby/RSVG: librsvg 2.8.0 or later
  • Ruby/Poppler: poppler-glib 0.8.0 or later
  • Ruby/VTE VTE 0.12.1 or later
  • Ruby/GtkSourceView2: GtkSourceView 2.0.0 or later
  • Ruby/GIO2: GIO 2.16.x or later
  • Ruby/CairoGObject: cairo-gobject 1.12.10 or later
  • Ruby/Clutter: Clutter 1.12.0 or later
  • Ruby/ClutterGTK: Clutter-GTK 1.2.0 or later
  • Ruby/ClutterGStreamer:Clutter-GStreamer 2.0.0 or later
  • Ruby/GtkSourceView3: GtkSourceView 3.4.2 or later
  • Ruby/VTE3: VTE 0.32.2 or later
  • Ruby/WebKitGTK: WebKitGTK+ 1.8.1 or later (for GTK+ 3)
  • Ruby/WebKitGTK2: WebKitGTK+ 1.8.1 or later (for GTK+ 2)
  • Ruby/GStreamer: GStreamer 1.0.0 or later

Experimental / Incomplete:

  • ...


% ruby extconf.rb
% make
% sudo make install

To compile and install a particular sub-binding, you can add arguments:

% ruby extconf.rb [subdir]...
e.g.) ruby extconf.rb glib2 pango atk gdk_pixbuf2 gtk2

Or you can compile each sub-binding:

% cd <each sub-directory>
% ruby extconf.rb
% make
% sudo make install

extconf.rb options

  • --ruby

    • ruby directory
  • --topsrcdir

    • top source directory
  • --topdir

    • top directory
  • --strict

    • if some libraries fail to compile/install, "make" command returns 1(exit 1)

Environment Variables

    • rcairo path (for Win32).


You should install a sub-binding with its dependencies. The current dependencies are:

  • Ruby/GLib
    • none.
  • Ruby/ATK
    • depends on Ruby/GLib.
  • Ruby/Pango
    • depends on Ruby/GLib, rcairo.
  • Ruby/GdkPixbuf
    • depends on Ruby/GLib.
  • Ruby/GTK
    • depends on Ruby/GLib, Ruby/ATK, Ruby/Pango, Ruby/GdkPixbuf, rcairo
  • Ruby/RSVG
    • depends on Ruby/GLib, Ruby/GdkPixbuf2.
  • Ruby/Poppler
    • depends on Ruby/GLib, Ruby/GdkPixbuf(optional), rcairo.
  • Ruby/VTE
    • depends on Ruby/GTK.
  • Ruby/GtkSourceView2
    • depends on Ruby/GTK.
  • Ruby/GIO2
    • depends on Ruby/GLib.
  • Ruby/GStreamer
    • depends on Ruby/GLib.

Install from GitHub master branch

You can also install this gem from GitHub master branch.

% git clone
% cd ruby-gnome2
% gem install rake rake-compiler mechanize pkg-config cairo
% rake gem:install


  • ...


Please report bugs either in our bug tracker

or on the ruby-gnome2-devel-en / ruby-gnome2-devel-ja mailing list


Copyright (c) 2002-2015 Ruby-GNOME2 Project Team

This program is free software. You can distribute/modify this program under the terms of the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1.


Some GTK+ 3 examples are licensed under GNU Free Documentation License 1.3 or any later version later; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.

Because they are based on scripts in PyGObject-Tutorial. PyGObject-Tutorial is licensed under GFDL 1.3.

See gtk3/examples/ directory for details.

Project Website

Something went wrong with that request. Please try again.