On 25 ноя, 09:23, Christopher James Halse Rogers
<[email protected]> wrote:
> On Mon, 2009-11-23 at 07:28 -0800, kriomant wrote:
> > I'm writing new plugin, which uses third-party library. This library
> > isn't available from standard repositories. How can I include this
> > library into my plugin?
>
> This depends on the library.  If it's something nice and portable, like
> a C# (or other mono language) library, it's easy.  If it's
> platform-dependent, it's harder.

I'm writing a plug-in for Transmission torrent client, and it uses
Jayrock.Json library for interacting with Transmission RPC interface.
Jayrock.Json is a fully managed .NET library.

> Is the end, the answer is: you don't.  Distributions will pick up the
> library and include it.  You can make it easier for users before this
> happens by bundling the library in some way, but please don't make it
> harder for distros to package it separately.

I can pack library into a package, but I have no intention to maintain
it. And embedding it into plug-in is definitely faster than waiting
for inclusion of package to distros. Of course, bundled library can be
safely removed once it is included into distro.

> > 1. Put library file into repository. Where to put it on users' system
> > then?
>
> You can check out how the Banshee plugin (used?) to do it; it would
> include Banshee.CollectionIndexer.dll in with the plugin.

OK, I've looked at how banshee distributes utility library. Should I
do the same?

> > 2. Merge library with my plugin. How to integrate mergin into build
> > process?
>
> This would be basically the same as below; look at the MicroBlogging
> plugin, which bundles the source of a twitter & such library.
>
> > 3. Include whole library code into plugin. License allows that, but it
> > is a lot of code.
>
> Please don't do this.
>
> We could give more assistance in #gnome-do on freenode, or if you gave
> more specifics about your plugin and the library that it's using.

I've asked this question on #gnome-do, but didn't wait till answer.
May be it is because of time zone difference...

--

You received this message because you are subscribed to the Google Groups 
"GNOME Do" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/gnome-do?hl=en.


Reply via email to