[Mono-dev] Portal.CLI: Various managed bindings for common UNIX/Linux libraries

William Lahti xfurious at gmail.com
Thu Aug 10 22:44:02 EDT 2006


For developers interested in managed access to common unmanaged F/OSS
libraries:

I'm pleased to announce the launch of the Portal.CLI project (
http://x11net.sf.net/). The goal of the project is to develop a group of
bindings covering libraries which are currently inaccessible from managed
code. These bindings are provided under licenses which are compatible with
the original projects to allow transfer of maintenance to first-party
developers if such an interest exists. The bindings attempt to have
coherence in their general layout, so most of them have both low-level and
high-level access to their specific libraries (except where it is not
feasible).

In it's initial alpha release (0.5a), the set includes (more or less
complete) bindings for the following libraries:
- libaspell
- libcairo (low-level only)
- libfontconfig
- libgnotify
- libhal
- libburn (mostly untested atm)
- posix.1e (capabilities = libcap, ACLs = libacl)
- libpangocairo (to access pango# with cairo, may be unnecessary if pango#
has expanded since I've checked)
- libpixman
- libsmbclient
- libX11 and friends, X11 extension libraries (under the X11.CLI binding)
- libxine

X11 access for managed code: although high-level graphics with GTK# and
friends is ahead of CLI-native approaches in terms of performance, raw X11
has less dependencies , and the potential performance of managed high-level
stacks based on low-level bindings are improving (especially with work on
MWF), but there is no complete offering for accessing the X11 libraries and
platform as a whole. Instead, DotGNU (barely) maintains the Xsharp library
as a thin layer for their X11 System.Drawing backend, and MWF's X11 plugin
contains internal definitions of the X11 APIs. Not to speak of duplication
of effort, but both of these solutions prevent access in one way or another
(Xsharp's APIs are mostly internal to itself except functionality needed by
System.Drawing, and of course MWF's plugin isn't actually a binding). And of
course, fans of mono don't like installing pnetlib just for Xsharp, and vice
versa. It makes sense, it's why Gtk# is available as a separate package.

X11.CLI is a rehash of Xsharp which expands it's code accessibility and
featureset. Low/high level access has been added to many of the newer
extensions and hopefully that will be extended to some older niche ones
which are useful to some. The latest extensions such as Xfixes, DAMAGE,
Composite, RANDR, EvIE (partially) are currently supported. The binding also
features improved semantics for higher-level libraries which use it.

The project is hosted at SourceForge.net at

website: http://x11net.sourceforge.net/
SF project: http://sourceforge.net/projects/x11net

If you are interested in discussing or participating in this project, please
consider participating on it's discussion/development mailing list at
x11net-discuss [at] lists.sf.net.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20060810/c1c6a665/attachment.html 


More information about the Mono-devel-list mailing list