Giter Site home page Giter Site logo

Licenses mess about newfon HOT 5 CLOSED

tseykovets avatar tseykovets commented on July 17, 2024
Licenses mess

from newfon.

Comments (5)

DraganRatkovich avatar DraganRatkovich commented on July 17, 2024

Hello,

@tseykovets First of all, thanks for reminding me about the license, as today I completely forgot to change the license from GPL to MIT license, as my main goal today was to distribute Newfon according to the addon-datastore, that became available recently. I'll definitely change it later.

As for the text of the license, I will look at it and change it if there is anything to change, because I did not copy the text of the license from any project.

Finally, as discussed recently with one of the Newfon developers, the developer told me that there are no problems with the Newfon license because the scripts have been changed from GPL to MIT and the compiled source code is distributed as is, without any decompilation. because it was written in an old version of the programming language and no one cares about maintaining it. In addition, there is an improved phonophone implementation called RU_TTS, so there is nothing to worry about with the license.

from newfon.

tseykovets avatar tseykovets commented on July 17, 2024

Hello @DraganRatkovich

Maybe I didn't explain clearly enough.

The speech driver for NVDA cannot be licensed under the MIT terms.

You should return the GPL license for the speech driver.

By distributing the speech driver under the MIT terms, you are violating the NVDA's license.

The speech driver inherits the NVDA core classes, and you must distribute this source code under the terms of the GPL.

These are the GPL license requirements. This is also confirmed in the NVDA documentation: see the "Add-on submission checklist" in the NVDA Add on Development Guide.

The binary library of Newfon also has certain issues with license purity.
In a good way, it should not be in the repository, as is done in the IBMTTS driver, Add-on.
But that's a separate issue. At least it doesn't violate the license of the active project.

ru_tts is a completely different project, the license and copyrights of which was directly agreed with all developers and copyright holders. Including with the copyright holders of the original Phonemophone synthesizer developed in 1990-1991 years.
The Nufon license doesn't even have a mention of the copyright holders of the original Phonemophone synthesizer. The legal cleanup of ru_tts does not apply to Newfon.

from newfon.

kvark128 avatar kvark128 commented on July 17, 2024

Tell me, where can I find out more about the incompatibility of MIT and GPL licenses? I always thought that the MIT license is GPL compatible.

from newfon.

tseykovets avatar tseykovets commented on July 17, 2024

@kvark128

MIT and GPL are compatible when they license two separate parts of a project. Also, MIT code can be relicensed under the GPL, but GPL code cannot be relicensed under MIT.

In the case of NVDA add-ons that import kernel modules, we are faced with class or object inheritance. Inheritance is the creation of derivative work based on the code of inherited classes or objects.

When you license classes inherited from NVDA under MIT, you're kind of relicensing GPL code into MIT, which is not allowed.

In theory, you can license part of the NVDA add-on under MIT as long as that part does not inherit the NVDA core classes. However, it is not possible to write a speech driver in this way.

In Newfon, it is possible to license under MIT separate files for additional languages in the languages subfolder, as they appear to be fairly isolated from the NVDA core. But the speech driver must be under the GPL or other fully compliant virus copyleft license.

Class or object inheritance is a special case for the GPL. The Free Software Foundation provided specific clarifications on this subject.

In an object-oriented language such as Java, if I use a class that is GPLed without modifying, and subclass it, in what way does the GPL affect the larger program?
Subclassing is creating a derivative work. Therefore, the terms of the GPL affect the whole program where you create a subclass of a GPLed class.

https://www.gnu.org/licenses/gpl-faq.html#OOPLang

See also https://www.gnu.org/licenses/lgpl-java.html

from newfon.

DraganRatkovich avatar DraganRatkovich commented on July 17, 2024

Fixed in b3e0735

from newfon.

Related Issues (4)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.