Giter Site home page Giter Site logo

Comments (7)

KevinMX avatar KevinMX commented on July 4, 2024

XRay is not compatible with GPL

参考: https://www.gnu.org/licenses/license-list.html#MPL-2.0

目前Xray-core使用的许可证为MPL-2.0,根据GNU的指导,与SagerNet所采用的GPLv3是兼容的。如果SagerNet是直接使用Xray-core运行,则可以视作是PagerNet是在使用Xray-core创作“较大作品”,并且Xray-core项目并未声明“不兼容次级许可证”,故默认与GPLv3兼容。

此外,目前SagerNet亦有使用AndroidLibV2rayLite,Xray与之对应的有AndroidLibXrayLite也是LGPLv3,同样兼容。

我不是许可证方面的专家,亦没有深入做过相关研究,以上只是个人一点愚见,如有问题/其他不能加入Xray支持的原因烦请回复。

可能OT:注意到您打了个duplicate的标签,是指前面已有issue提到Xray支持问题吗?但第一个提到Xray支持问题的 #15 似乎也被打上了duplicate的标签。此外,如您在README.md中已经提到的,Xray可能直接使用X-flutter更好,但目前X-flutter尚未问世,且将来很可能闭源,有PagerNet这样一个客户端能用也是十分有意义的。

from sagernet.

fcying avatar fcying commented on July 4, 2024

@KevinMX 前几天看debian群里有人说起MPL这个问题, 好像是还有点问题.. 下面那段就是Xray-core里面写的.
1

from sagernet.

KevinMX avatar KevinMX commented on July 4, 2024

@KevinMX 前几天看debian群里有人说起MPL这个问题, 好像是还有点问题.. 下面那段就是Xray-core里面写的.
1

我个人理解这个只是MPL-2.0的使用范例吧(?)包括License中的10.4部分,应该,都只是使用范例。MPL-2.0与GPLv3不兼容的情况应该是需要作者明确声明的。

from sagernet.

fcying avatar fcying commented on July 4, 2024

写在LICENSE里面的, 就是有效的许可证声明吧...要是允许, 就应该删掉这些?
上面也是1. Definitions

具体的我就不了解了. 对这方面没研究.

from sagernet.

KevinMX avatar KevinMX commented on July 4, 2024

写在LICENSE里面的, 就是有效的许可证声明吧...要是允许, 就应该删掉这些?

可能需要更懂License的人来解答了,不过呢,目前我看到的都是说MPL-2.0默认兼容GPLv3,除非单独声明,而Xray-core那边带的LICENSE貌似就是GitHub默认的MPL-2.0,和Mozilla的完整版本一致,无更改。我个人倾向于Xray-core没有特别对此做声明。

@nekohasekai 您怎么看?

from sagernet.

nekohasekai avatar nekohasekai commented on July 4, 2024
1.5. "Incompatible With Secondary Licenses"
    means

    (a) that the initial Contributor has attached the notice described
        in Exhibit B to the Covered Software; or

    (b) that the Covered Software was made available under the terms of
        version 1.1 or earlier of the License, but not also under the
        terms of a Secondary License.

1.12. "Secondary License"
    means either the GNU General Public License, Version 2.0, the GNU
    Lesser General Public License, Version 2.1, the GNU Affero General
    Public License, Version 3.0, or any later versions of those
    licenses.

据我了解必须要二进制隔离, 且插件不能带 xray 这个名字才能绕过.

from sagernet.

KevinMX avatar KevinMX commented on July 4, 2024

https://www.mozilla.org/en-US/MPL/2.0/FAQ/

Q14: May I combine MPL-licensed code and (L)GPL-licensed code in the same executable program?

Yes, by creating a "Larger Work" under the terms of Section 3.3. In particular, three requirements must be met:

1. The software must not be “Incompatible With Secondary Licenses.” Software can become “Incompatible With Secondary Licenses” in one of two ways: the original author marks it as such by adding the file header in Exhibit B, or the original author published the software under MPL 1.1 and did not dual- or tri-license the code with the (L)GPL.

个人理解是,by adding the file header in Exhibit B 才算是明确表示与GPL不兼容?Xray-core目前使用的是MPL-2.0原文,并没有在License头部加入此类说明。

此外,https://www.mozilla.org/en-US/MPL/2.0/combining-mpl-and-gpl/ 也提供了一些示范。

目前SagerNet亦有使用AndroidLibV2rayLite,Xray与之对应的有AndroidLibXrayLite也是LGPLv3,同样兼容。

如果 Xray-core 的MPL-2.0与(L)GPLv3不兼容,那么上游 2dust/AndroidLibXrayLite 应该也是不兼容。

嗯……还是找个更懂License的人来看看吧😂

from sagernet.

Related Issues (20)

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.