Guides & References

About Vala

The Vala Tutorial by GNOME

Vala for C# Programmers by GNOME

Vala for Java Programmers by GNOME

Gtk+ Kick-Start Tutorial for Vala by Alberto Ruiz

Vala Language Introduction by Andre Masella

Creating elementary OS apps with GTK & Vala

Learn Vala and Gtk+ from Scratch (Playlist)


Packages

Submitting API-Bugs and Patches

For all bindings where the status is not marked as external, and unless otherwise noted, bugs and pull-requests should be submitted to the Vala product in the GNOME GitLab instance.

Projects without VAPI files

Most GObject-instrospected projects are shipping their own bindings and Vala also ships with many of them. For many non-GObject introspected libraries, a repository is available in the vala-extra-vapis project in the GNOME GitLab instance.


GNOME & Friends

Core

gee-0.8

Libgee is a collection library providing GObject-based interfaces and classes for commonly used data structures.

gio-2.0

GIO provides a modern and easy-to-use VFS API. It provides a file system abstraction which allows applications to access local and remote files with a single consistent API.

gio-unix-2.0

UNIX-specific file abstractions for GIO.

glib-2.0

GLib provides the core application building blocks for libraries and applications written in C. It provides the core object system used in GNOME, the main loop implementation, and a large set of utility functions for strings and common data structures.

gmodule-2.0

Portable method for dynamically loading 'plug-ins'

gobject-2.0

GObject provides the object system used for Pango and GTK+.

libpeas-1.0

libpeas is a gobject-based plugins engine, and is targetted at giving every application the chance to assume its own extensibility.

libpeas-2

libpeas is a gobject-based plugins engine, and is targetted at giving every application the chance to assume its own extensibility.

User Interface

clutter-1.0

Clutter is a GObject based library for creating fast, visually rich, graphical user interfaces.

gegl-gtk3-0.1

Utility library for using GEGL in GTK+ 3 based applications

goocanvas-2.0

GooCanvas is a canvas widget for GTK+ that uses the cairo 2D library for drawing.

gtk+-3.0

GTK+ is the primary library used to construct user interfaces in GNOME applications. It provides user interface controls and signal callbacks to control user interfaces.

gtk4

GTK is the primary library used to construct user interfaces in GNOME applications. It provides user interface controls and signal callbacks to control user interfaces.

gtksourceview-3.0

GtkSourceView is a portable C library that extends the standard GTK+ framework for multiline text editing with support for configurable syntax highlighting, unlimited undo/redo, search and replace, a completion framework, printing and other features typical of a source code editor.

gtksourceview-4

GtkSourceView is a GNOME library that extends GtkTextView, the standard GTK+ widget for multiline text editing. GtkSourceView adds support for syntax highlighting, undo/redo, file loading and saving, search and replace, a completion system, printing, displaying line numbers, and other features typical of a source code editor.

gtksourceview-5

GtkSourceView is a GNOME library that extends GtkTextView, the standard GTK+ widget for multiline text editing. GtkSourceView adds support for syntax highlighting, undo/redo, file loading and saving, search and replace, a completion system, printing, displaying line numbers, and other features typical of a source code editor.

javascriptcoregtk-4.0

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers. This is the library to use to acces JavaScript from WebKitGTK.

javascriptcoregtk-4.1

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers. This is the library to use to acces JavaScript from WebKitGTK.

javascriptcoregtk-6.0

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers. This is the library to use to acces JavaScript from WebKitGTK.

libadwaita-1

Building blocks for modern GNOME applications

libdazzle-1.0

The libdazzle library is a companion library to GObject and Gtk+. It provides various features that we wish were in the underlying library but cannot for various reasons. In most cases, they are wildly out of scope for those libraries. In other cases, our design isn't quite generic enough to work for everyone.

libgda-ui-5.0

Libgda is a (relatively small) database access library. This package provides GTK+ widgets to database access.

libgnome-menu-3.0

Utility library for loading .desktop files.

libhandy-0.0

A library full of GTK+ widgets for mobile phones

libhandy-1

Building blocks for modern adaptive GNOME apps

libpeas-gtk-1.0

A GObject-based plugins engine

shumate-1.0

Shumate is a library providing a widget to display maps in applications.

vte-2.91

Terminal emulator widget used by GNOME terminal.

webkit2gtk-4.0

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers.

webkit2gtk-4.1

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers.

webkit2gtk-web-extension-4.0

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers. This is the library to use to build extensions running in the separated webprocess.

webkit2gtk-web-extension-4.1

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers. This is the library to use to build extensions running in the separated webprocess.

webkitgtk-6.0

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers.

webkitgtk-web-extension-6.0

WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers. This is the library to use to build extensions running in the separated webprocess.

Multimedia

babl-0.1

babl is pixel encoding and color space conversion engine in C. It allows converting between different methods of storing pixels known as pixel formats that have with different bitdepths and other data representations, color models, color spaces and component permutations. A vocabulary to formulate new pixel formats from existing primitives is provided as well as the framework to add new color models, spaces and data types.

clutter-gst-3.0

GStreamer bindings for clutter.

gegl-0.3

GEGL (Generic Graphics Library) is a data flow based image processing framework, providing floating point processing and non-destructive image processing capabilities to GNU Image Manipulation Program and other projects (imgflo, GNOME Photos, gcut, iconographer, …)

gegl-0.4

GEGL (Generic Graphics Library) is a data flow based image processing framework, providing floating point processing and non-destructive image processing capabilities to GNU Image Manipulation Program and other projects (imgflo, GNOME Photos, gcut, iconographer, …)

gexiv2

gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP metadata in photo and video files of various formats

grilo-0.3

Framework that provides access to various sources of multimedia content

grilo-net-0.3

Network classes for Grilo

gssdp-1.0

GObject-based API for handling resource discovery and announcement over SSDP.

gst-editing-services-1.0

The GStreamer Editing Services (GES) aims to fill the gap between GStreamer/NLE and the application developer by offering a series of classes to simplify the creation of many kind of editing-related applications.

gstreamer-1.0

Powerful framework for creating multimedia applications. Supports both Audio and Video.

gstreamer-allocators-1.0

GStreamer Allocators Library

gstreamer-base-1.0

GStreamer Multimedia Framework Base plugin libraries.

gstreamer-check-1.0

GStreamer Check Unit Testing

gstreamer-controller-1.0

GStreamer Dynamic Parameter Control

gstreamer-net-1.0

GStreamer Network Classes

gstreamer-pbutils-1.0

General Application and Plugin Utility Library

gstreamer-rtsp-server-1.0

GStreamer RTSP Server-Library

gstreamer-tag-1.0

GStreamer Tag Support Library

gstreamer-video-1.0

Support library for video operations

gupnp-1.0

Core UPnP API built on top of gssdp

gupnp-av-1.0

Small utility library that aims to ease the handling and implementation of UPnP audio/video profiles

gupnp-dlna-2.0

GUPnP DLNA is a set of utility APIs to simplify DLNA-specific bits of MediaServer implementations, such as DLNA media profile guessing.

gupnp-dlna-gst-2.0

GStreamer integration for GUPnP DLNA

libcanberra

A small and lightweight implementation of the XDG Sound Theme Specification.

libcanberra-gtk

Libcanberra-gtk provides a few functions that simplify libcanberra usage from Gtk+.

rygel-core-2.6

Librygel-core is a collection of classes useful to Rygel's server and renderer implementation libraries and useful to plugin implementors.

rygel-db-2.6

This library implements a generic database abstraction used by rygel and rygel plugins

rygel-renderer-2.6

This library may be used to create UPnP or DLNA Renderers. For instance, librygel-renderer-gst uses librygel-renderer with GStreamer to implement its RygelPlaybinRenderer renderer.

rygel-renderer-gst-2.6

This library may be used to create UPnP or DLNA Renderers using GStreamer. The RygelPlaybinRenderer may wrap an existing GStreamer playbin or create its own. See the example.

rygel-ruih-2.0

This library implements the Remote User Interface Server protocol interfaces.

rygel-server-2.6

This library may be used to create UPnP or DLNA servers, Rygel Server plugins or Rygel Media Engines

Under the Hood

atk

ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications. Using the ATK interfaces, accessibility tools have full access to view and control running applications.

atspi-2

AT-SPI2 is a D-Bus based accessibility framework. It defines a D-Bus protocol for providing and accessing application accessibility information. The project includes a library for bridging the D-Bus protocol to the ATK API, allowing Gtk based applications to be made accessible.

cairo

Cairo is a 2D graphics library with support for multiple output devices like the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG.

cogl-1.0

COGL is a low level OpenGL abstraction library developed for (and part of) Clutter. It is used primarily by Clutter to provide a common rendering API that works transparently across OpenGL >=1.4, OpenGL ES 1.1 and OpenGL ES 2.0.

cogl-pango-1.0

Binding for the CoglPango 1.0 library.

gdk-3.0

An intermediate layer which isolates GTK+ from the details of the windowing system.

gdk-pixbuf-2.0

GdkPixbuf is a library for image loading and manipulation. The GdkPixbuf documentation contains both the programmer's guide and the API reference.

gdk-x11-3.0

X backend-specific API for gdk.

graphene-gobject-1.0

A thin layer of types for graphic libraries

gtk4-wayland

Wayland backend-specific API for gdk4.

gtk4-x11

X11 backend-specific API for gdk4.

ibus-1.0

Next Generation Input Bus for Linux.

librsvg-2.0

Library for rendering of SVG vector graphics.

pango

Pango is the core text and font handling library used in GNOME applications. It has extensive support for the different writing systems used throughout the world.

pangocairo

Rendering with the Cairo backend.

Data Storage

camel-1.2

Camel is a generic messaging library. It supports the standard messaging system for receiving and sending messages. It is the messaging backend for Evolution.

folks

Libfolks is a library that aggregates people from multiple sources (eg, Telepathy connection managers and eventually evolution data server, Facebook, etc.) to create metacontacts.

folks-eds

Folks, eds-backend

folks-telepathy

Folks, telepathy-backend

gcalc-1

GNOME Calculator's library to parse and evaluate math expressions

libaccounts-glib

Accounts management library for online services.

libebook-1.2

This package is a client library for evolution addressbooks.

libebook-contacts-1.2

This package is a client library for evolution addressbooks.

libecal-2.0

This package is a client library for evolution calendars.

libecalendar-1.2

This package is a client library for evolution calendars.

libedataserver-1.2

The data server, called "Evolution Data Server" is responsible for managing calendar and addressbook information.

libgda-5.0

Libgda is a (relatively small) database access library.

libgda-6.0

Libgda is a (relatively small) database access library.

libgeoclue-2.0

GeoClue is a D-Bus geoinformation service. The goal of the Geoclue project is to make creating location-aware applications as simple as possible.

libical-glib

Implementation of the iCalendar protocols and protocol data units. The iCalendar specification describes how calendar clients can communicate with calendar servers so users can store their calendar data and arrange meetings with other users.

libmediaart-1.0

The libmediaart library is the foundation for media art caching, extraction and lookup for applications on the desktop.

libsecret-1

libsecret is a library for storing and retrieving passwords and other secrets. It communicates with the "Secret Service" using DBus. gnome-keyring and ksecretservice are both implementations of a Secret Service.

sqlite3

A C library that implements an SQL database engine.

tracker-sparql-3.0

A SPARQL triple store library.

vda-1

Vala Data Access library, a set of interfaces to connect to databases and execute queries

vgda-1

VDA implementation using GDA as backend, suitable to implement new GDA supported implementations

vgpg-1

VDA implementation using GDA as backend to connect to PostgreSQL databases

vgsl-1

VDA implementation using GDA as backend to connect to SQLite databases

vpg-1

VDA implementation using to connect directly to PostgreSQL databases

Web Services & HTTP

gmime-3.0

MIME message parser and creator library

gnutls

A library which provides a secure layer over a reliable transport layer

goa-1.0

A centralized service that allows a set of online accounts to be configured for use with core GNOME applications. In UX terms, GOA provides a static list of online accounts that can be setup by users (through the Online Accounts panel in System Settings). These accounts can then be used by core GNOME applications.

gsignond

Single signon daemon library.

gweather-3.0

Location and timezone database and weather-lookup library.

gweather4

Location and timezone database and weather-lookup library.

libcurl

An open source command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMTP, SMTPS, Telnet and TFTP. curl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, HTTP/2, cookies, user+password authentication (Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos), file transfer resume, proxy tunneling and more.

libgdata

GData (Google data) is a set of Application Programming Interfaces (APIs) for the Common Language Infrastructure (CLI) which provide a simple protocol for reading and writing data on the web.

libnm

Network management framework.

libnm-glib

Network management framework. (replaced by libnm)

libnm-util

Network management framework, utils.

libsignon-glib

Single signon authentication library for online services.

libsoup-2.4

libsoup is an HTTP client/server library for GNOME. It uses GObjects and the glib main loop, to integrate well with GNOME applications.

libsoup-3.0

libsoup is an HTTP client/server library for GNOME. It uses GObjects and the glib main loop, to integrate well with GNOME applications.

libuhttpmock-0.0

HTTP web service mocking project for projects which use libsoup

rest-0.7

A helper library for RESTful services.

rest-1.0

A helper library for RESTful services.

rest-extras-0.7

This extra package provides Facebook and Flickr support.

rest-extras-1.0

This extra package provides LastFM, Youtube and Flickr support.

telepathy-glib

Telepathy is a D-Bus framework for unifying real time communication, including instant messaging, voice calls and video calls. It abstracts differences between protocols to provide a unified interface for applications.

valum-0.3

Web micro-framework written in Vala

vsgi-0.3

Middleware that interfaces various Web server technologies

Markup

gxml-0.20

GObject XML library and serialization framework.

json-glib-1.0

JSON-GLib is a library for reading and parsing JSON using GLib and GObject data types and API.

libgrss

LibGRSS is a library for easy management of RSS/Atom/Pie feeds. Includes methods to fetch, parse and handle XML documents, an implementation of PubSubHubBub client, an OPML parser and some more utility.

libxml-2.0

Powerful and feature complete XML handling library.

template-glib-1.0

Template-GLib is a library to generate text from a template and user defined state. Template-GLib allows you to access properties on GObjects as well as call simple methods via GObject-Introspection Template-GLib does not use a language runtime, so it is safe to use from any GObject-Introspectable language.

Remote Display Systems & Virtualization

gtk-vnc-2.0

A VNC viewer widget for GTK+.

gvnc-1.0

VNC gobject wrapper.

gvncpulse-1.0

A bridge to the Pulse Audio system for VNC. It allows VNC clients to play back audio on the local system

libguestfs-gobject-1.0

GObject binding for libguestfs, a set of tools for accessing and modifying virtual machine disk images.

libvirt-gconfig-1.0

libvirt object APIs for processing object configuration.

libvirt-glib-1.0

API for controlling virtualization engines. (openvz,kvm,qemu,virtualbox,xen,etc)

libvirt-gobject-1.0

GLib and GObject mapping of libvirt.

spice-client-glib-2.0

GObject for communicating with Spice servers.

spice-client-gtk-3.0

A Gtk client and libraries for SPICE remote desktop servers.

spice-protocol

Headers for SPICE protocol.

Other

accountsservice

Query and manipulate user account information

appstream

AppStream is a cross-distro effort for enhancing the way we interact with the software repositories provided by the distribution by standardizing sets of additional metadata.

avahi-client

The Avahi package is a system which facilitates service discovery on a local network.

avahi-gobject

Avahi is a system which facilitates service discovery on a local network via the mDNS/DNS-SD protocol suite. This enables you to plug your laptop or computer into a network and instantly be able to view other people who you can chat with, find printers to print to or find files being shared. Compatible technology is found in Apple MacOS X (branded Bonjour and sometimes Zeroconf).

colord

System daemon for managing color devices.

colord-gtk

GTK integration for libcolord.

dbus-glib-1

Initial D-Bus Support (Do not use in new projects, use DBus support included in GLib instead)

enchant

A wrapper library for generic spell checking.

gck-1

GLib wrapper library for PKCS#11

gck-2

GLib wrapper library for PKCS#11

gcr-3

A library for bits of crypto UI and parsing

gcr-4

A library for bits of crypto UI and parsing

gdl-1.0

The GNOME Devtools Library package provides a docking system and several utilities useful to GNOME development tools and GNOME applications in general.

gdl-3.0

The GNOME Devtools Library package provides a docking system and several utilities useful to GNOME development tools and GNOME applications in general.

gedit

Official text editor of the GNOME desktop environment.

geocode-glib-1.0

Geocode Helper library

geocode-glib-2.0

Geocode Helper library

gobject-introspection-1.0

GObject introspection is a middleware layer between C libraries (using GObject) and language bindings.

gudev-1.0

GUdev (libgudev) is a library with GObject bindings to libudev, now made independent, after being part of udev itself, and later systemd.

jsonrpc-glib-1.0

Jsonrpc-GLib is a library to communicate with JSON-RPC based peers in either a synchronous or asynchronous fashion. It also allows communicating using the GVariant serialization format instead of JSON when both peers support it. You might want that when communicating on a single host to avoid parser overhead and memory-allocator fragmentation

libarchive

Library that can create and read several streaming archive formats.

libdmapsharing-3.0

A library that implements the DMAP family of protocols

libepc-1.0

The Easy Publish and Consume library (libepc) provides an easy method to publish data using HTTPS, announce that information via DNS-SD, find that information and finally consume it.

libgit2-glib-1.0

GLib wrapper library around the libgit2 git access library.

libgitg-1.0

Small, fast and convenient set of widgets to visualize the history of git repositories.

libgitg-ext-1.0

Gitg extensions library.

libgsf-1

Structured File Library (GSF) is an I/O abstraction for reading/writing compound files.

libnotify

libnotify is a library that sends desktop notifications to a notification daemon, as defined in the Desktop Notifications spec. These notifications can be used to inform the user about an event or display some form of information without getting in the user's way.

liboobs-1

GObject based interface to system-tools-backends.

libosinfo-1.0

Library for managing information about operating systems and hypervisors.

libwnck-3.0

Library to manage X windows and workspaces (via pagers, tasklists, etc.)

packagekit-glib2

Library for accessing PackageKit using GLib.

pkcs11

Provides a way to load and enumerate PKCS#11 modules. Provides a standard configuration setup for installing PKCS#11 modules in such a way that they're discoverable.

poppler-glib

PDF rendering library.

udisks2

Disk Management Service.


Ubuntu

dbusmenu-glib-0.4

A small little library that was created by pulling out some comon code out of indicator-applet. It passes a menu structure across DBus so that a program can create a menu simply without worrying about how it is displayed on the other side of the bus.

dbusmenu-gtk3-0.4

A small little library that was created by pulling out some comon code out of indicator-applet. It passes a menu structure across DBus so that a program can create a menu simply without worrying about how it is displayed on the other side of the bus.

dee-1.0

Library to provide objects allowing to create Model-View-Controller type programs across DBus.

snapd-glib

Library providing a GLib interface to snapd

unity

A library for instrumenting- and integrating with all aspects of the Unity shell.

unity-trace

Logging using Unity's Trace system.

zeitgeist-2.0

Zeitgeist is a service which logs the users's activities and events (files opened, websites visites, conversations held with other people, etc.) and makes relevant information available to other applications. It is able to establish relationships between items based on similarity and usage patterns.


Pantheon

granite

Granite is an extension of GTK+. Among other things, it provides complex widgets and convenience functions designed for use in apps built for elementary OS.

granite-7

Granite is a platform library for Gtk 4. It provides complex widgets and convenience functions designed for use in apps built for elementary OS.

switchboard-2.0

Switchboard is a modular system settings hub containing plugs (settings panels)


SDL

sdl2

Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.

sdl2-android

Android-specific API for SDL.

sdl2-ios

IOS-specific API for SDL.

sdl2-windows

Windows-specific API for SDL.

SDL2_gfx

Provides the basic drawing functions such as lines, circles or polygons provided by SDL_gfx on SDL2 against renderers of SDL2.

SDL2_image

An image file loading library.

SDL2_mixer

A sample multi-channel audio mixer library.

SDL2_net

A small sample cross-platform networking library, with a sample chat client and server application. The chat client uses the GUIlib GUI framework library.

SDL2_ttf

A sample library which allows you to use TrueType fonts in your SDL applications. It comes with an example program "showfont" which displays an example string for a given TrueType font file.


Databases & Resource Description

libpq

Client API for PostgreSQL.

mysql

Client API for MySQL.

raptor

A library that parses RDF/XML/N-Triples into RDF triples

rasqal

A free library that handles Resource Description Framework (RDF) query syntaxes, query construction and query execution returning result bindings

tokyocabinet

Kyoto Cabinet is a library of routines for managing a database.


System

alsa

An alternative implementation of Linux sound support

atasmart

ATA S.M.A.R.T. Reading and Parsing Library

curses

Character screen handling and windowing.

fuse

A library that makes it possible to implement a filesystem in a userspace program.

fwupd

This project aims to make updating firmware on Linux automatic, safe and reliable.

gusb

GLib wrapper around libusb-1.0

hal

These pages attempt to provide a specification and an implementation of a hardware abstraction layer.

libftdi

A library to talk to FTDI chips.

libmm-glib

ModemManager provides a unified high level API for communicating with (mobile broadband) modems.

libnl-3.0

The libnl suite is a collection of libraries providing APIs to netlink protocol based Linux kernel interfaces.

libportal

libportal provides GIO-style async APIs for most Flatpak portals.

libpulse

A featureful, general-purpose sound server (client library)

libpulse-mainloop-glib

A featureful, general-purpose sound server (client library)

libpulse-simple

A featureful, general-purpose sound server (client library)

libusb-1.0

A cross-platform user-mode library, for generic access to USB devices

linux

API for the Linux-based GNU systems.

posix

The Portable Operating System Interface.

readline

GNU readline library.

v4l2

A universal control panel for Video for Linux Two (V4L2) devices

x11

Binding to the X11 graphics library.

xtst

X11 Testing -- Resource extension library.


Multimedia

libgvc

Graph visualization software.

libmagic

An image manipulation library.

pixman-1

The pixel-manipulation library for X and cairo.

taglib_c

TagLib Audio Meta-Data Library.

tiff

Library for manipulation of TIFF images.


Other

bump-0.1

Bump is a library designed to make asynchronous programming easy by providing high-level data structures for concurrency management, including multi-threading and main loop callbacks, in GObject/GIO based projects, especially those written in Vala.

bzlib

Libraries and include files for the bzip2 compressor library.

gpseq-1.0

A parallelism library for Vala and GObject.

gsl

A collection of numerical routines for scientific computing.

libdaemon

Libdaemon is a leightweight C library which eases the writing of UNIX daemons.

libesmtp

LibESMTP is a library to manage posting (or submission of) electronic mail using SMTP to a preconfigured Mail Transport Agent (MTA) such as Exim. It may be used as part of a Mail User Agent (MUA) or another program that must be able to post electronic mail but where mail functionality is not the program's primary purpose.

libosso

Libosso is a wrapper library for user applications for platform-specific, frequently-used D-Bus services.

libproxy-1.0

Automatic proxy configuration management library.

libvala This valadoc is on another site

valac, the Vala compiler, is a self-hosting compiler that translates Vala source code into C source and header files. It uses the GObject type system to create classes and interfaces declared in the Vala source code.

loudmouth-1.0

Loudmouth is a C library that enables applications to use the Jabber protocol. It is designed to be cross platform, and straightforward to use.

lua

Programming language designed for extending applications.

orc-0.4

The Open Resource Container is a general-purpose, platform-independant file format for storing many different types of data that applications may need.

purple

IM library extracted from Pidgin.

zlib

A Massively Spiffy Yet Delicately Unobtrusive Compression Library


Vala Extra Vapis

aubio

Plugins to allow abiword to import file types from other wordprocessors.

augeas

A library for changing configuration files.

cairo-xcb

Cairo - multi-platform 2D graphics library

check

Check is a unit testing framework for C. It features a simple interface for defining unit tests, putting little in the way of the developer. Tests are run in a separate address space, so both assertion failures and code errors that cause segmentation faults or other signals can be caught. Test results are reportable in the following: Subunit, TAP, XML, and a generic logging format.

cpufreq

An initscript to set CPU frequency settings.

ctpl

CTPL is a template library written in C. It allows fast and easy parsing of templates from many sources (including in-memory data and local and remote streaming, thanks to GIO) and fine control over template parsing environment.

cups

CUPS printing system.

fcgi

A language independent, scalable, open extension to CGI that provides high performance without the limitations of server specific APIs.

gcrypt

A general purpose crypto library based on the code used in GNU Privacy Guard. This is a development version.

glesv2

The Standard for Embedded Accelerated 3D Graphics.

glfw3

A free, open source, multi-platform library for OpenGL application development that provides a powerful API for handling operating system specific tasks such as opening an OpenGL window, reading keyboard, mouse, joystick and time input, creating threads, and more.

gpg-error

This is a library that defines common error values for all GnuPG components. Among these are GPG, GPGSM, GPGME, GPG-Agent, libgcrypt, pinentry, SmartCard Daemon and possibly more in the future.

gpgme

A library designed to make access to GnuPG easier for applications. It provides a high-level Crypto API for encryption, decryption, signing, signature verification, and key management. Currently it uses GnuPG as its back-end, but the API is not restricted to this engine.

kiss_fft

A Fast Fourier Transform based up on the principle, "Keep It Simple, Stupid." Kiss FFT is a very small, reasonably efficient, mixed radix FFT library that can use either fixed or floating point data types.

leveldb

A fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.

libcolumbus

A lightweight library for document indexing and fuzzy searching.

libcouchbase

The C library provides fast access to documents in Couchbase Server 2.0. With JSON documents and Couchbase server 2.0 you have new ways to index and query data stored in the cluster through views. This client library, libcouchbase, also simplifies requests to Views through its handling of HTTP transport.

libevent

Abstract asynchronous event notification library. The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. libevent is meant to replace the asynchronous event loop found in event driven network servers.

libgsasl

The library includes support for the SASL framework and at least partial support for the CRAM-MD5, EXTERNAL, GSSAPI, ANONYMOUS, PLAIN, SECURID, DIGEST-MD5, LOGIN, and NTLM mechanisms.

libmatheval

Library for parsing and evaluating symbolic expressions input as text

libmemcached

Client library and command line tools for memcached server

libmemcachedutil

Libmemcached is a C and C++ client library to the memcached server. It has been designed to be light on memory usage, thread safe, and provide full access to server side methods. The libmemcachedutil library contains utility functions used by libmemcached.

libqpid-proton

Qpid Proton is a high-performance, lightweight messaging library. It can be used in the widest range of messaging applications, including brokers, client libraries, routers, bridges, proxies, and more. Proton makes it trivial to integrate with the AMQP 1.0 ecosystem from any platform, environment, or language.

libqrencode

QRencode is a library to encode a string as a QR code and save it as a PNG image.

librabbitmq

This is a C-language AMQP client library for use with AMQP servers.

libserialport

libserialport is a minimal library written in C that is intended to take care of the OS-specific details when writing software that uses serial ports. By writing your serial code to use libserialport, you enable it to work transparently on any platform supported by the library.

libstemmer

Snowball stemming algorithms for use in Information Retrieval Snowball provides access to efficient algorithms for calculating a "stemmed" form of a word. This is a form with most of the common morphological endings removed; hopefully representing a common linguistic base form. This is most useful in building search engines and information retrieval software; for example, a search with stemming enabled should be able to find a document containing "cycling" given the query "cycles".

libsystemd-id128

This package provides the systemd-id128 shared library.

libsystemd-journal

This package provides the systemd-journal shared library.

libzmq

The 0MQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. 0MQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more.

magic

A very capable VLSI layout tool.

oniguruma

Oniguruma is a regular expressions library. The characteristics of this library is that different character encoding for every regular expression object can be specified. (supported APIs: GNU regex, POSIX and Oniguruma native)

OpenCL

OpenCL (Open Computing Language) is the open, royalty-free standard for cross-platform, parallel programming of diverse processors found in personal computers, servers, mobile devices and embedded platforms.

opencv

OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library.

pa_ringbuffer

Single-reader single-writer lock-free ring buffer.

portaudio

PortAudio is a portable audio I/O library designed for cross-platform support of audio. It uses a callback mechanism to request audio processing. Audio can be generated in various formats, including 32 bit floating point, and will be converted to the native format internally.

portmidi

Real-time MIDI input/output, audio I/O library.

pwquality

The library purpose is to provide common functions for password quality checking and also scoring them based on their apparent randomness. The library also provides a function for generating random passwords with good pronounceability. The library supports reading and parsing of a configuration file.

samplerate

A Sample Rate Converter for audio.

sane-backends

Scanner Access Now Easy (SANE) is a universal scanner interface. The SANE application programming interface (API) provides standardized access to any raster image scanner hardware (flatbed scanner, hand-held scanner, video and still cameras, frame-grabbers, etc.).

sensors

Hardware health monitoring for Linux. Includes programs that show data from some sensor chips. The interface /proc/bus/i2c/ is provided by loading kernel modules.

snappy

Fast compression and decompression library. It does not aim for maximum compression, or compatibility with any other compression library; instead, it aims for very high speeds and reasonable compression.

sndfile

GNUstep GUI package.

tcc

Tiny C Compiler.

uchardet

Universal charset detection.

uuid

Universally Unique Identifier library.

xcb

The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility.

xcb-composite

X11 Composite Extension C library.

xcb-damage

X11 Damage Extension C library.

xcb-dri2

X11 DRI2 Extension C library.

xcb-dri3

X11 DRI3 Extension C library.

xcb-icccm

XCB utility module for client- and WM-side ICCCM helpers.

xcb-present

X11 Present Extension C library.

xcb-randr

X11 RandR Extension C library.

xcb-render

XCB utility module for the Render extension.

xcb-res

X11 Resource Extension library.

xcb-shape

X11 Shape Extension library.

xcb-shm

X11 Shared Memory Extension library.

xcb-sync

X11 Sync Extension library.

xcb-xfixes

X11 Xfixes Extension library.

xcb-xinerama

X11 Xinerama Extension library.

xcb-xtest

X11 XTEST Extension library.

xcb-xv

X11 video Extension library.