Skip to content
Bindings for GObject Introspection and libgirepository for Guile
C Scheme Shell Makefile M4 C++ Other
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build-aux #63: add test-driver.scm Sep 28, 2019
doc Document removal of LOAD_FIELDS. Nov 10, 2019
docs Regenerate docs Nov 3, 2019
examples
m4 Recursive make considered harmful Sep 3, 2019
module remove field-related code Nov 5, 2019
src Merge branch 'master' of github.com:spk121/guile-gi Nov 15, 2019
test rewrite "blocked signal" test Oct 30, 2019
tools Drop tools/guile-gi. Oct 27, 2019
.dir-locals.el
.gitattributes Update .gitattributes Sep 12, 2019
.gitignore #36: use system's gimarshallingtests to build libmarshall Sep 5, 2019
.indent.pro Recursive make considered harmful Sep 3, 2019
.travis.yml Print test-suite.log to Travis console on make check failure Jun 29, 2019
AUTHORS Prep new release Aug 31, 2019
COPYING Minor cleanup Aug 30, 2019
Dockerfile Print test-suite.log to Travis console on make check failure Jun 29, 2019
LICENSE Initial commit Sep 5, 2018
Makefile.am Fix CSS path in generated html Nov 3, 2019
NEWS Bump versions and update NEWS Nov 3, 2019
README.md fix weird comma Aug 31, 2019
bootstrap build: compile and install .go files. Jun 3, 2019
configure.ac Bump versions and update NEWS Nov 3, 2019
guix.scm Update guix.scm. Oct 27, 2019

README.md

Guile GI

Build Status

This is a library for GNU Guile to create language bindings via GObject Introspection.

GNU Guile is an implementation of Scheme, which is a Lisp-like language. This library allows Guile to use GObject-based libraries -- such as GTK+3, GLib, and WebKit2 -- by generating a Scheme API from the GObject Introspection information provided by those libraries.

This is alpha code. It is lightly documented. The API is stabilizing, but may still be subject to change.

Guile GI has two primary components.

  • The gi scheme modules: guile modules that provide functionality to dynamically generate Scheme API from GObject typelib files

  • libguile-gi.so or libguile-gi.dll: a compiled module that contains glue code to interface with GObject

To create bindings, use the use-typelibs syntax found in the (gi) library.

For the moment, the docs are at spk121.github.io/guile-gi

Try:

guix environment --ad-hoc -l guix.scm guile
guile-gi examples/browser.scm

Or, create and run in a development environment

guix environment -l guix.scm
./bootstrap && ./configure && make
tools/uninstalled-env tools/guile-gi examples/browser.scm
You can’t perform that action at this time.