Comments (7)
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.
@KevinMX 前几天看debian群里有人说起MPL这个问题, 好像是还有点问题.. 下面那段就是Xray-core里面写的.
from sagernet.
@KevinMX 前几天看debian群里有人说起MPL这个问题, 好像是还有点问题.. 下面那段就是Xray-core里面写的.
我个人理解这个只是MPL-2.0的使用范例吧(?)包括License中的10.4部分,应该,都只是使用范例。MPL-2.0与GPLv3不兼容的情况应该是需要作者明确声明的。
from sagernet.
写在LICENSE里面的, 就是有效的许可证声明吧...要是允许, 就应该删掉这些?
上面也是1. Definitions
具体的我就不了解了. 对这方面没研究.
from sagernet.
写在LICENSE里面的, 就是有效的许可证声明吧...要是允许, 就应该删掉这些?
可能需要更懂License的人来解答了,不过呢,目前我看到的都是说MPL-2.0默认兼容GPLv3,除非单独声明,而Xray-core那边带的LICENSE貌似就是GitHub默认的MPL-2.0,和Mozilla的完整版本一致,无更改。我个人倾向于Xray-core没有特别对此做声明。
@nekohasekai 您怎么看?
from sagernet.
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.
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)
- [功能建议] 通过api 修改配置,选择节点
- 【UI交互问题】多个版本一直出现 “连接” 按钮经常莫名消失或者错位的现象
- The least-ping strategy causes an infinite loop and app crashes
- NAT Type test error HOT 1
- Reality protocol HOT 1
- libcore/nat: dispatch tcp conn failed
- TUIC V5 compatible protocol support
- 能否考虑支持自签ca ?
- TUIC V5 compatible protocol support HOT 1
- Fix tuic-v1.0.0 client Custom Configuration
- socks类型的节点,可否支持tls with allowInsecure=true的情况? HOT 3
- URL Test،Reality Protocol.
- Step by step build from source
- build failed
- 无法使用vless,可能是因为user id处理有问题?
- 是否考虑支持nebula
- Create SN:// Share Link With PHP/Python
- Protocol: overlay networking support
- 请求更新naiveproxy plugin HOT 2
- Is SagerNet a dead project?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sagernet.