[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
gEDA-user: [RFC 2/6] Plugin system
Currently, Scheme is the only available extension language for
gEDA. However, in future it may be desirable to extend gEDA apps in
other languages, including possibly as native code loaded from .so
files.
Furthermore, if configuration files are no longer executable (see
previous e-mail), some mechanism must be provided for users to configure
gEDA to load their custom Scheme code. For instance, the attribute
autoplacement code might use such a plugin mechanism.
I propose:
1. In their configuration files, users specify plugins to load using a
string of the form:
<plugin-type>:<type-specific-part>
For instance, to load a plugin written in Scheme, the <plugin-type>
might be "scheme" and the <type-specific-part> might be the name of
the Scheme file to load, without the ".scm" suffix.
2. For security, gEDA should only look for plugins in predefined
directories:
$HOME/.gEDA/plugins # Or a similar user directory
$PREFIX/share/gEDA/plugins # Or a similar system directory
Although users might wish to configure gEDA to look elsewhere for
plugins, care must be taken to ensure that there is no way to exploit
this. For instance, gEDA might forbid the plugin search path from
being modified in project configuration files.
Peter
--
Peter Brett
Electronic Systems Engineer
Integral Informatics Ltd
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user