[sane-devel] External backend advice

scanf @dslextreme.com scanf at dslextreme.com
Fri May 13 18:58:37 UTC 2011

Thanks, Olaf. Lots of good information in your post. Looks like I have
more research to do.

On Thu, May 12, 2011 at 4:32 PM, Olaf Meeuwissen
<olaf.meeuwissen at avasys.jp> wrote:
> "scanf @dslextreme.com" <scanf at dslextreme.com> writes:
>> Hi sane-devel,
>> I'm sure most of you are developers, not lawyers but I'm hoping
>> someone can point me in the right direction. I'm trying to figure out
>> the best way to release a SANE backend that complies with the GPL
>> while protecting the proprietary code it relies on.
>> [snip]
>> Instead, I have proposed we develop a SANE backend that uses our
>> driver library to control the scanner. It would not contain any
>> proprietary code so we could release the backend portion as source
>> code. Reliance on binary code excludes it from the SANE distribution
>> but that's not a problem. The main issue is the software license. I
>> have read the license, copyright notice and Information for
>> Manufacturers page but our situation is still unclear.
> Have you gone through the GPL FAQ[1]?  Especially the bit about the
> legal issues that come up if you use GPL-incompatible libraries with GPL
> software[2] and writing free software that uses non-free libraries[3]?
>  [1] http://www.gnu.org/licenses/gpl-faq.html
>  [2] http://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs
>  [3] http://www.gnu.org/licenses/gpl-faq.html#FSWithNFLibs
>> Here's the big question: If we release our backend as source, does
>> that expose our driver library to the GPL so its sources would also
>> have to be released? In case it matters, the proposed backend would
>> use runtime dynamic linking for the library.
> The way I understand it, you own the copyright of this SANE backend you
> proposed so you get to pick the license.  If you really want to go with
> the GPL (which I think is great!), you can add an exception that allows
> linking with your proprietary code.  You could also look at other, more
> lax licenses.  The list of GPL-compatible licenses[4] is a good start.
>  [4] http://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses
>> I looked for existing external backends with binary code to see how
>> other companies handled the licensing issue. The links I checked on
>> the External Backends list were broken or outdated. Can you refer me
>> to an existing backend similar to what I've proposed?
> The epkowa backend did the same and still does something similar.  In
> the past it linked dynamically against proprietary interpreters for a
> scanner model of two.  The number of interpreters grew (we've got ~15
> now :-(), so we switched to on-demand dynamic loading instead.  This
> doesn't really make a difference for the licensing issues but it made
> the backend free-as-in-freedom for those users that have scanner models
> that do not need an interpreter.
> Hope this helps,
> --
> Olaf Meeuwissen, LPIC-2           FLOSS Engineer -- AVASYS CORPORATION
> FSF Associate Member #1962               Help support software freedom
>                 http://www.fsf.org/jf?referrer=1962

More information about the sane-devel mailing list