Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 494490 - dev-python/bsddb3 licensing conflict with sys-libs/db-6.0*
Summary: dev-python/bsddb3 licensing conflict with sys-libs/db-6.0*
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-12-17 05:46 UTC by Patrick Lauer
Modified: 2021-05-12 15:10 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Add agplv3 use flag to optionally use db-6.x (bsddb3.patch,1.49 KB, patch)
2014-08-03 16:25 UTC, Mike Gilbert
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Lauer gentoo-dev 2013-12-17 05:46:47 UTC
This might be relevant for bsddb-6.0.0, which doesn't show this message but has the same license:


Found Berkeley DB 6.0 installation.
  include files in /usr/include
  library files in /usr/lib64
  library name is libdb-6.0
Detected Berkeley DB version 6.0 from db.h

******* COMPILATION ABORTED *******

You are linking a Berkeley DB version licensed under AGPL3 or have a commercial license.

AGPL3 is a strong copyleft license and derivative works must be equivalently licensed.

You have two choices:

  1. If your code is AGPL3 or you have a commercial Berkeley DB license from Oracle, please, define the environment variable 'YES_I_HAVE_THE_RIGHT_TO_USE_THIS_BERKELEY_DB_VERSION' to any value, and try to install this python library again.

  2. In any other case, you have to link to a previous version of Berkeley DB. Remove Berlekey DB version 6.0 and let this python library try to locate an older version of the Berkeley DB library in your system. Alternatively, you can define the environment variable 'BERKELEYDB_DIR', or 'BERKELEYDB_INCDIR' and 'BERKELEYDB_LIBDIR', with the path of the Berkeley DB you want to use and try to install this python library again.

Sorry for the inconvenience. I am trying to protect you.

More details:

    https://forums.oracle.com/message/11184885
    http://lists.debian.org/debian-legal/2013/07/

******* COMPILATION ABORTED *******

 * ERROR: dev-python/bsddb3-6.0.1::gentoo failed (compile phase):
 *   (no error message)
Comment 1 Arfrever Frehtes Taifersar Arahesis 2014-03-07 12:48:48 UTC
From ChangeLog:
"6.0.1:
    ...
  * If you want to link with Oracle Berkeley DB 6.0, you will
    need to create the environment variable 
    'YES_I_HAVE_THE_RIGHT_TO_USE_THIS_BERKELEY_DB_VERSION'
    to signal to the pybsddb that you are legal. To be legal,
    your code MUST be AGPL3 *OR* you have to buy a commercial
    license from Oracle.

    If you are not legally entitled to use Berkeley DB 6.0 and
    you have previous versions of Berkeley DB on your system,
    you can a) delete Berkeley DB 6.0 and try again, OR
    b) instruct pybsddb to use a previous Berkeley DB version,
    using environment variables or command line options."


Licenses team:
Should ebuild set YES_I_HAVE_THE_RIGHT_TO_USE_THIS_BERKELEY_DB_VERSION environmental variable?
Comment 2 Ulrich Müller gentoo-dev 2014-03-07 13:42:52 UTC
(In reply to Arfrever Frehtes Taifersar Arahesis from comment #1)
>   * If you want to link with Oracle Berkeley DB 6.0, you will
>     need to create the environment variable 
>     'YES_I_HAVE_THE_RIGHT_TO_USE_THIS_BERKELEY_DB_VERSION'
>     to signal to the pybsddb that you are legal. To be legal,
>     your code MUST be AGPL3 *OR* you have to buy a commercial
>     license from Oracle.

IMHO this is just nonsense. Both AGPL-3 and BSD are approved as Free Software licenses by both the FSF and the OSI, and the (3-clause) BSD license is GPL-compatible. It should be no problem to link such code together and distribute the resulting binary (under the terms of both BSD and AGPL-3, of course).

Even DB itself contains some code that is BSD licensed.

Disclaimer: IANAL, TINLA.
Comment 3 Ian Delaney (RETIRED) gentoo-dev 2014-07-27 00:41:30 UTC
*bsddb3-6.1.0 (27 Jul 2014)

  27 Jul 2014; Ian Delaney <idella4@gentoo.org> +bsddb3-6.1.0.ebuild:
  bump; drop py2.6, upgrade test phase
Comment 4 Mike Gilbert gentoo-dev 2014-08-03 14:43:58 UTC
Before somebody re-closes this bug behind my back again: The build failure stated in comment 0 still occurs with sys-lib/db:6.0 and bsddb3-6.1.0.

The WORKSFORME resolution was due to lack of proper testing, not any sort of fix.
Comment 5 Mike Gilbert gentoo-dev 2014-08-03 15:58:37 UTC
Is it possible to get a second opinion from the licenses team on this?

I certainly appreciate ulm's feedback, but I want to be a bit more sure on this before we intentionally circumvent a check put in place by the upstream developer.
Comment 6 Mike Gilbert gentoo-dev 2014-08-03 16:25:00 UTC
Created attachment 382142 [details, diff]
Add agplv3 use flag to optionally use db-6.x

Here's a sort of hacky solution: We can utilize a use flag in LICENSE and depend on appropriate version of DB.

This way, people who don't want to accept AGPLv3 for their projects can bypass it and we will build against an older DB version.
Comment 7 Mike Gilbert gentoo-dev 2014-08-03 17:41:01 UTC
+  03 Aug 2014; Mike Gilbert <floppym@gentoo.org> bsddb3-6.1.0.ebuild:
+  Introduce bindist use flag to control dependency on db-6.x. Bug 494490.
Comment 8 Ulrich Müller gentoo-dev 2014-08-03 18:33:45 UTC
(In reply to Mike Gilbert from comment #7)
> +  03 Aug 2014; Mike Gilbert <floppym@gentoo.org> bsddb3-6.1.0.ebuild:
> +  Introduce bindist use flag to control dependency on db-6.x. Bug 494490.

Reopening. There is no licensing conflict to start with, therefore the bindist flag is unnecessary. See comment #2.
Comment 9 Mike Gilbert gentoo-dev 2014-08-03 18:41:19 UTC
(In reply to Ulrich Müller from comment #8)
> Reopening. There is no licensing conflict to start with, therefore the
> bindist flag is unnecessary. See comment #2.

This compromise was reached after discussion with robbat2 in #gentoo-dev.
Comment 10 Mike Gilbert gentoo-dev 2014-08-03 18:50:34 UTC
I will leave this open until the license team can reach some agreement.
Comment 11 Mike Gilbert gentoo-dev 2014-08-03 19:18:01 UTC
+  03 Aug 2014; Mike Gilbert <floppym@gentoo.org> bsddb3-6.1.0.ebuild:
+  Drop bindist use flag; BSD and AGPLv3 are compatible.