question about proprietary libraries

2010-09-01 Thread Stephen Sinclair
Hello,

This is a general question about linking to proprietary libraries.
Specifically I am thinking about developing a library which will work
normally in the general case, but in some cases the user might have a
proprietary library installed on their system, in which case I'd like
to dynamically load that library and call out to its functions.

The proprietary library in this case would be for doing I/O with a
particular hardware device, for which there is currently no open
source alternative.  Therefore the user owning such a device would
have installed the software and expect my library to work with it.
Conversely, he would not have the proprietary library unless he has
the device in question.. so I sort of think of this library as being
"part of" the device.  I don't have the ability to reverse engineer it
and write my own drivers, but I'd still like users of this device to
be able to make use of my software.

Would such a library have difficulty getting accepted by Debian?

Are there other examples of libraries in Debian which optionally
leverage proprietary code if it is available?


thanks,
Steve


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/aanlkti=k5pyo6j4843t_-giynsrboresbn4=xtqqj...@mail.gmail.com



Re: question about proprietary libraries

2010-09-01 Thread Felipe Sateler
On 01/09/10 20:40, Stephen Sinclair wrote:
> Hello,
> 
> This is a general question about linking to proprietary libraries.
> Specifically I am thinking about developing a library which will work
> normally in the general case, but in some cases the user might have a
> proprietary library installed on their system, in which case I'd like
> to dynamically load that library and call out to its functions.
> 
> The proprietary library in this case would be for doing I/O with a
> particular hardware device, for which there is currently no open
> source alternative.  Therefore the user owning such a device would
> have installed the software and expect my library to work with it.
> Conversely, he would not have the proprietary library unless he has
> the device in question.. so I sort of think of this library as being
> "part of" the device.  I don't have the ability to reverse engineer it
> and write my own drivers, but I'd still like users of this device to
> be able to make use of my software.
> 
> Would such a library have difficulty getting accepted by Debian?
> 
> Are there other examples of libraries in Debian which optionally
> leverage proprietary code if it is available?
> 

Not exactly a library, but the kernel will load proprietary firmware if
it finds it available and the device in question exists. As long as your
software is useful without said proprietary library, it can go in main.
If not, it should go in contrib.


-- 
Saludos,
Felipe Sateler



signature.asc
Description: OpenPGP digital signature


Re: question about proprietary libraries

2010-09-02 Thread Rogério Brito
Hi there.

On Sep 01 2010, Stephen Sinclair wrote:
> I don't have the ability to reverse engineer it and write my own
> drivers, but I'd still like users of this device to be able to make
> use of my software.

Right. You can dlopen the library, depending on the case. Your program
will still be Free, in the same sense that the Linux Kernel is Free.
You may want to check the license that you will eventually use: I think
that the GPL wouldn't cut it, but the LGPL might.

> Would such a library have difficulty getting accepted by Debian?

The library, yes. Your program? No, depending on how "dependent" the
program would be on that library. If the use of said devices is just a
minor part of the program's role, then it may be accepted into main,
without any problems.

OTOH, if it needs the library, then the most that you would be able to
do with your program would be to go into contrib.

Does this answer your question?



Regards,

-- 
Rogério Brito : rbr...@{ime.usp.br,gmail.com} : GPG key 4096R/BCFC
http://rb.doesntexist.org : Packages for LaTeX : algorithms.berlios.de
DebianQA: http://qa.debian.org/developer.php?login=rbrito%40ime.usp.br


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20100902080340.ga7...@ime.usp.br



Re: question about proprietary libraries

2010-09-02 Thread Julien Viard de Galbert
On Thu, Sep 02, 2010 at 05:03:40AM -0300, Rogério Brito wrote:
> Hi there.
> 
> On Sep 01 2010, Stephen Sinclair wrote:
> > I don't have the ability to reverse engineer it and write my own
> > drivers, but I'd still like users of this device to be able to make
> > use of my software.
> 
> Right. You can dlopen the library, depending on the case. Your program
> will still be Free, in the same sense that the Linux Kernel is Free.
> You may want to check the license that you will eventually use: I think
> that the GPL wouldn't cut it, but the LGPL might.
> 
> > Would such a library have difficulty getting accepted by Debian?
> 
> The library, yes. Your program? No, depending on how "dependent" the
> program would be on that library. If the use of said devices is just a
> minor part of the program's role, then it may be accepted into main,
> without any problems.
> 
I find it a little confusing, he was first saying he wants to write a
_library_, than can uses a proprietary library.

What I understand is that his library (the one he want to write) could 
be accepted to main if it is useful without the proprietary library
(that can be considered as a hardware driver). Then any program using it
could also go to main (provided that no other dependency would require
it to be contrib or non-free).

> 
> OTOH, if it needs the library, then the most that you would be able to
> do with your program would be to go into contrib.

Of course if the proprietary library is necessary then his library goes
to contrib as well as any program depending on it.

Also I think I've read somewhere that no library really enter debian
unless a program requires it. (which kind of makes sense).

Tell me if I'm wrong, I'm currently learning debian practices.

-- 
Julien Viard de Galbert
http://silicone.homelinux.org/   
GPG Key ID: D00E52B6  Published on: hkp://keys.gnupg.net
Key Fingerprint: E312 A31D BEC3 74CC C49E  6D69 8B30 6538 D00E 52B6


signature.asc
Description: Digital signature


Re: question about proprietary libraries

2010-09-02 Thread Peter Pentchev
On Thu, Sep 02, 2010 at 11:28:54AM +0200, Julien Viard de Galbert wrote:
> On Thu, Sep 02, 2010 at 05:03:40AM -0300, Rogério Brito wrote:
> > Hi there.
> > 
> > On Sep 01 2010, Stephen Sinclair wrote:
> > > I don't have the ability to reverse engineer it and write my own
> > > drivers, but I'd still like users of this device to be able to make
> > > use of my software.
> > 
> > Right. You can dlopen the library, depending on the case. Your program
> > will still be Free, in the same sense that the Linux Kernel is Free.
> > You may want to check the license that you will eventually use: I think
> > that the GPL wouldn't cut it, but the LGPL might.
> > 
> > > Would such a library have difficulty getting accepted by Debian?
> > 
> > The library, yes. Your program? No, depending on how "dependent" the
> > program would be on that library. If the use of said devices is just a
> > minor part of the program's role, then it may be accepted into main,
> > without any problems.
> > 
> I find it a little confusing, he was first saying he wants to write a
> _library_, than can uses a proprietary library.
> 
> What I understand is that his library (the one he want to write) could 
> be accepted to main if it is useful without the proprietary library
> (that can be considered as a hardware driver). Then any program using it
> could also go to main (provided that no other dependency would require
> it to be contrib or non-free).

That's how I understand the situation, FWIW.

The whole thing might become a bit clearer with a real example of
a library that is already in Debian main, and that may optionally use
another library that is not in Debian.  Take a look at the libdvdread4
package, and specifically at how /usr/share/doc/libdvdread4/README.Debian
documents its relationship with the libdvdcss library which is not
in Debian.  The libdvdread4 library is useful even without libdvdcss,
but its operation is enhanced by libdvdcss's presence on the system.

So, basically, yes, this is acceptable, and that's exactly how it is done.

> > OTOH, if it needs the library, then the most that you would be able to
> > do with your program would be to go into contrib.
> 
> Of course if the proprietary library is necessary then his library goes
> to contrib as well as any program depending on it.
> 
> Also I think I've read somewhere that no library really enter debian
> unless a program requires it. (which kind of makes sense).
> 
> Tell me if I'm wrong, I'm currently learning debian practices.

IMHO you're right :)

G'luck,
Peter

-- 
Peter Pentchev  r...@space.bgr...@ringlet.netr...@freebsd.org
PGP key:http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint FDBA FD79 C26F 3C51 C95E  DF9E ED18 B68D 1619 4553
Hey, out there - is it *you* reading me, or is it someone else?


signature.asc
Description: Digital signature


Re: question about proprietary libraries

2010-09-02 Thread Boyd Stephen Smith Jr.
In <20100902092854.gr4...@vdg.blogsite.org>, Julien Viard de Galbert wrote:
>Also I think I've read somewhere that no library really enter debian
>unless a program requires it. (which kind of makes sense).

I mentioned this in another thread.  I'm not sure if it is policy.  I was 
imagining a C library, which has little end-user demand if there's no 
application that needs it.  I can imagine a PHP library (e.g.) might be 
shipped because it is useful for users developing websites (e.g.).
-- 
Boyd Stephen Smith Jr.   ,= ,-_-. =.
b...@iguanasuicide.net   ((_/)o o(\_))
ICQ: 514984 YM/AIM: DaTwinkDaddy `-'(. .)`-'
http://iguanasuicide.net/\_/


signature.asc
Description: This is a digitally signed message part.


Re: question about proprietary libraries

2010-09-02 Thread Stephen Sinclair
On Thu, Sep 2, 2010 at 5:48 AM, Peter Pentchev  wrote:
> On Thu, Sep 02, 2010 at 11:28:54AM +0200, Julien Viard de Galbert wrote:
>> On Thu, Sep 02, 2010 at 05:03:40AM -0300, Rogério Brito wrote:
>> > Hi there.
>> >
>> > On Sep 01 2010, Stephen Sinclair wrote:
>> > > I don't have the ability to reverse engineer it and write my own
>> > > drivers, but I'd still like users of this device to be able to make
>> > > use of my software.
>> >
>> > Right. You can dlopen the library, depending on the case. Your program
>> > will still be Free, in the same sense that the Linux Kernel is Free.
>> > You may want to check the license that you will eventually use: I think
>> > that the GPL wouldn't cut it, but the LGPL might.
>> >
>> > > Would such a library have difficulty getting accepted by Debian?
>> >
>> > The library, yes. Your program? No, depending on how "dependent" the
>> > program would be on that library. If the use of said devices is just a
>> > minor part of the program's role, then it may be accepted into main,
>> > without any problems.
>> >
>> I find it a little confusing, he was first saying he wants to write a
>> _library_, than can uses a proprietary library.
>>
>> What I understand is that his library (the one he want to write) could
>> be accepted to main if it is useful without the proprietary library
>> (that can be considered as a hardware driver). Then any program using it
>> could also go to main (provided that no other dependency would require
>> it to be contrib or non-free).
>
> That's how I understand the situation, FWIW.
>
> The whole thing might become a bit clearer with a real example of
> a library that is already in Debian main, and that may optionally use
> another library that is not in Debian.  Take a look at the libdvdread4
> package, and specifically at how /usr/share/doc/libdvdread4/README.Debian
> documents its relationship with the libdvdcss library which is not
> in Debian.  The libdvdread4 library is useful even without libdvdcss,
> but its operation is enhanced by libdvdcss's presence on the system.
>
> So, basically, yes, this is acceptable, and that's exactly how it is done.

Okay thank you, this basically answers my question.  By the way to
clarify, yes it is the development of a library which may optionally
use a vendor-provided library for accessing a particular device.  I
would like to make it easier for open source developers to develop
software for this class of devices, some which have open source
drivers and some which don't.  That is, it will eventually lead to
applications, but first is to develop a simple library.

Now that I know it's not entirely hopeless, I will work on this
project and then if specific issues arise at least I know there is
some precedence to refer to in this situation.

Final question on this topic: What about the fact that to use some
vendor library functions, (even if it is dlopen'ed), it is necessary
to include headers from the vendor library?  (Or at least to port the
function prototypes, although likely some structs and enums are also
necessary.)  Would this in any way affect future packaging issues?  I
will assume for now that the vendor's policy is to allow people to
distribute their header files, since otherwise I can't think of any
legal way to write open source software that would use their device.

thanks,
Steve


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/aanlktikjdxjw5zvcwcdkpj9gd=rwnpeg2k-h24169...@mail.gmail.com



Re: question about proprietary libraries

2010-09-02 Thread The Fungi
On Thu, Sep 02, 2010 at 12:46:09PM -0400, Stephen Sinclair wrote:
[...]
> I will assume for now that the vendor's policy is to allow people
> to distribute their header files, since otherwise I can't think of
> any legal way to write open source software that would use their
> device.

Do you have a (legally sound) reason to believe that the vendor even
cares whether people write open source software for this device? For
that matter, do you know that their header files aren't licensed to
them by some non-transferrable agreement which allows the vendor to
provide a copy to you but doesn't entitle you to pass them along to
anyone else?
-- 
{ IRL(Jeremy_Stanley); PGP(97AE496FC02DEC9FC353B2E748F9961143495829);
SMTP(fu...@yuggoth.org); IRC(fu...@irc.yuggoth.org#ccl); ICQ(114362511);
AIM(dreadazathoth); YAHOO(crawlingchaoslabs); FINGER(fu...@yuggoth.org);
MUD(kin...@katarsis.mudpy.org:6669); WWW(http://fungi.yuggoth.org/); }


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20100902171057.gn2...@yuggoth.org



Re: question about proprietary libraries

2010-09-02 Thread Stephen Sinclair
On Thu, Sep 2, 2010 at 1:10 PM, The Fungi  wrote:
> On Thu, Sep 02, 2010 at 12:46:09PM -0400, Stephen Sinclair wrote:
> [...]
>> I will assume for now that the vendor's policy is to allow people
>> to distribute their header files, since otherwise I can't think of
>> any legal way to write open source software that would use their
>> device.
>
> Do you have a (legally sound) reason to believe that the vendor even
> cares whether people write open source software for this device? For
> that matter, do you know that their header files aren't licensed to
> them by some non-transferrable agreement which allows the vendor to
> provide a copy to you but doesn't entitle you to pass them along to
> anyone else?

Not as far as I know, but I'll have to read the license in more
detail.  I'm assuming for now that the headers are allowed to be
distributed.  (For example, they can be found in their freely
available documentation.)

There are currently some other open source projects (not in Debian)
which are already dlopen'ing the library in question, so I think they
are okay with it.

Steve


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/aanlktikgshooyb-rxmatcaeuv5hirdtzgwamqfmnc...@mail.gmail.com



Re: question about proprietary libraries

2010-09-02 Thread Yavor Doganov
Boyd Stephen Smith Jr. wrote:
> In <20100902092854.gr4...@vdg.blogsite.org>, Julien Viard de Galbert wrote:
> >Also I think I've read somewhere that no library really enter debian
> >unless a program requires it. (which kind of makes sense).
> 
> I mentioned this in another thread.  I'm not sure if it is policy.

Definitely not a policy.  Take a look at libgnupdf; this completely
useless *snapshot* make it even in Lenny.  And another useless
snapshot is going to be in Squeeze, too, unless someone does something
about it (like filing a RM bug).

There are lots of other examples, I believe.


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/871v9bhoos.gnus_not_unix!%ya...@gnu.org