TLDR: It’s compatible with other copy-left licenses like GPLv3. However, it’s available in multiple languages, which technically makes it more applicable.

I started using it for my own project. If you want a practical example: https://github.com/TimoKats/emmer

  • david_@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    35
    ·
    edit-2
    2 days ago

    The Free Software Foundation writes the following about the EUPL 1.2 (https://www.gnu.org/licenses/license-list.html#EUPL12):

    This is a free software license. By itself, it has a copyleft comparable to the GPL’s, and incompatible with it. However, it gives recipients ways to relicense the work under the terms of other selected licenses, and some of those—the Eclipse Public License and the Common Public License in particular—only provide a weaker copyleft. Thus, developers can’t rely on this license to provide a strong copyleft.

    The EUPL allows relicensing to GPLv2, because that is listed as one of the alternative licenses that users may convert to. It also, indirectly, allows relicensing to GPL version 3, because there is a way to relicense to the CeCILL v2, and the CeCILL v2 gives a way to relicense to any version of the GNU GPL.

    To do this two-step relicensing, you need to first write a piece of code which you can license under the CeCILL v2, or find a suitable module already available that way, and add it to the program. Adding that code to the EUPL-covered program provides grounds to relicense it to the CeCILL v2. Then you need to write a piece of code which you can license under the GPLv3-or-later, or find a suitable module already available that way, and add it to the program. Adding that code to the CeCILL-covered program provides grounds to relicense it to GPLv3-or-later.

    The fact that re-licensing from EUPL to GPL is so cumbersome (and therefor off-putting to independent developers), and that at the same time it allows for re-licensing to weaker copyleft (i.e. for derivative works to be more proprietary, so to speak), makes me not want to use it.

    • yetAnotherUser@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      2
      ·
      15 hours ago

      That’s wrong. The EUPL’s strictest provisions remain in effect even when used in other licenses:

      However, according to the EUPL, the compatible licence that is applied to a derivative work will prevail “in case of conflict” with the EUPL. For example, when the EUPL licensor has its seat in Germany, the applicable law is German and the court is Berlin, but if the code is reused in a French project distributed under CeCILL, the French law will be applicable and the competent court will be Paris. But on the strongest open source EUPL provisions, like the coverage of SaaS and the obligation to publish and share the derivative source code, none of the listed compatible licences enters in conflict with the EUPL: for example, they may not “impose” code distribution in case of SaaS distribution, but they do not prohibit it. Therefore the EUPL obligations are persistent.

      The EUPL 1.2 also allows directly relicensing to GPLv3, I don’t know where they got the idea you cannot do so.

      Large parts of the GPLs are also void (e.g. providing “zero warranty/liability” and provisions regarding dynamic linking) according to EU case law.

      The EUPL is effectively a interoperable strong copyleft license. It tries to prevent license incompatibilities due to “virality”.

      I strongly recommend reading these two articles, they are much more accurate than the FSF’s:

      https://interoperable-europe.ec.europa.eu/collection/eupl/licence-compatibility-permissivity-reciprocity-and-interoperability

      https://interoperable-europe.ec.europa.eu/collection/eupl/matrix-eupl-compatible-open-source-licences

      • david_@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        13 hours ago

        Highly interesting. However:

        So these are the parts of the EUPL 1.2 that are most relevant to copyleft:

        1. Obligations of the Licensee

        Copyleft clause: If the Licensee distributes or communicates copies of the Original Works or Derivative Works, this Distribution or Communication will be done under the terms of this Licence or of a later version of this Licence unless the Original Work is expressly distributed only under this version of the Licence — for example by communicating ‘EUPL v. 1.2 only’. The Licensee (becoming Licensor) cannot offer or impose any additional terms or conditions on the Work or Derivative Work that alter or restrict the terms of the Licence.

        Compatibility clause: If the Licensee Distributes or Communicates Derivative Works or copies thereof based upon both the Work and another work licensed under a Compatible Licence, this Distribution or Communication can be done under the terms of this Compatible Licence. For the sake of this clause, ‘Compatible Licence’ refers to the licences listed in the appendix attached to this Licence. Should the Licensee’s obligations under the Compatible Licence conflict with his/her obligations under this Licence, the obligations of the Compatible Licence shall prevail.

        Having read this section multiple times, also in different languages, I preliminarily believe that the following still remains possible:

        1. Let’s say that some person or entity “A” has released some code under the EUPL.

        2. Some other person or entity “B” creates a derivative work and distributes it (including all of A’s code) under the LGPL. This is allowed per the first sentence of the EUPL’s Compatibility clause above: “this Distribution or Communication can be done under the terms of this Compatible Licence”. Here B is a licensee of the EUPL-licenced work, and what the final part of the Compatibility clause (just like the text that you quoted) says is that B, being a licensee of a EUPL-licensed work, continues to be bound by all of the EUPL’s copyleft obligations. Fair enough.

        3. Now some third person or entity “C” comes along, and takes just this re-distributed work, which is being distributed by B under the terms of just the LGPL. Here C has no obligations under the EUPL, because C is only dealing with code that is distributed by B under just the LGPL. That is, C is solely a licensee under the terms of the LGPL.

        And thus the exploit would be: Corporation C pays some straw man company B to re-distribute A’s interesting EUPL code under the LGPL, so that corporation C can pick it up while only needing to comply with the weaker copyleft of the LGPL.

        • yetAnotherUser@discuss.tchncs.de
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 hours ago

          I am not an expert in copyright law, which is what these licenses are based upon and cannot analyze the text.

          Still, couldn’t you make it even more straightforward by forking twice yourself?

          1. Take the original EUPL code and fork it under the LGPL
          2. Take the LGPL code and fork it under the LGPL
          3. This second fork has all EUPL conditions removed

          I’d by surprised if the license authors did not consider this. Lawyers wrote this with consideration of EU law after all, not some laypeople.

          If I had to guess: Any inclusion of EUPL code in another project would have to be marked as being under the EUPL. This is solely to inform anyone who wants to fork this section and distribute the code in form of SaaS to abide by source code requests.

          It’s like an EU variant of the AGPL whose many conditions about linking apparently don’t hold up in EU court. The GPL’s are all primarily considering US copyright law after all.

          • david_@discuss.tchncs.de
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            4 hours ago

            I think the EUPL has indeed outruled such redistributing-to-oneself by defining

            ‘Distribution’ or ‘Communication’: any act of selling, giving, lending, renting, distributing, communicating, transmitting, or otherwise making available, online or offline, copies of the Work or providing access to its essential functionalities at the disposal of any other natural or legal person.

            (Besides, I could imagine that even without this definition, such redistributing-to-oneself would already constitute a violation because it would count as an act in bad faith.)

            Keeping up copyleft is a neverending struggle against influence campaigns and lobbying operations telling us and telling public officials, “Don’t be so obsessed with copyleft like the ideologues at the FSF are; all those scenarios you’re hearing about up won’t occur anyway.” And then they try to privatize the X Window System. The second document that you linked to (this one) actually has this interesting sentence in the Disclaimer at its top: “The Matrix is not influenced by ideology (telling the good and the ugly, urging people to use or to avoid specific licenses).” It does sound like the authors have been under such an influence.

            My theory would be that these lawyers, top professionals doubtless, were being tasked something like “By golly, we have 27 languages, 27 legal systems, and the French are already using their own favorite licence—you have to give us something we can work with”. And so interoperability, convertibility, became their top priority, to which they would indeed consciously or unconsciously sacrifice watertight copyleft.

            That being said, the issue with how well the GPL and AGPL fit European jurisdictions must of course be resolved somehow.

            • yetAnotherUser@discuss.tchncs.de
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 hour ago

              Oh, I didn’t consider the “any other” aspect.

              Welp, I can still register several distinct legal entities in different EU countries, can’t I? Maybe one could be a “Taking every EUPL work on the internet and relicensing it under LGPL as a service” company. That’s bound to make some money from SaaS companies if it would be this easy to purge the EUPL terms.

              Though the “ideology” quote is a bit awful, I’ll give you that. The matrix itself does look fairly neutral though, especially with this part under “Discussion of Linking”:

              We made the assumption that, by selecting a Gnu license, licensors follow the FSF position and want to consider that most cases of static linking create a derivative.

              I’d also argue the 27 legal systems might not be too relevant since copyright law is generally equal in the different member states. The remaining legal issues (e.g. warranty) are irrelevant for interoperabilith between licenses. Also, most importantly, there are only 24 languages in the EU.

              If the official guidelines are recognized by courts as legally binding then I think the EUPL is superior to even the AGPL. Sadly that remains to be seen due to the lack of EUPL projects out there (and the lack of corresponding lawsuits).