Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Discussion related to license compatibility issue 有关协议兼容性的讨论 #10

Open
kattgu7 opened this issue Apr 2, 2019 · 63 comments

Comments

@kattgu7
Copy link
Owner

kattgu7 commented Apr 2, 2019

有关协议兼容性的问题请在这里讨论,谢谢!
Pls discuss license compatibility issues here, thank you!

@1989wanghang
Copy link

文本列数有超过80列(不包含一般c或者其他语言的注释符号),需要稍微重新排版下。

@kattgu7
Copy link
Owner Author

kattgu7 commented Apr 2, 2019

@Xianguang-Zhou I'm studying the compatibility issues because it is so damn complicated. The license is intended to be compatible with other commonly used licenses.

@kattgu7
Copy link
Owner Author

kattgu7 commented Apr 2, 2019

@1989wanghang can you help adjust that? I'm not a programmer so I'm not familiar with how some functions work.

@ff4415
Copy link
Contributor

ff4415 commented Apr 2, 2019

@1989wanghang @kattgu7

#13

@ff4415
Copy link
Contributor

ff4415 commented Apr 2, 2019

我认为按照这个方式处理兼容性挺好:

LICENSES

一个独立的996ICU协议。约束力仅仅高于MIT。
一个可以附加在其它协议后面的最小条款, 构成不侵权的附加版本协议。

这两个作为独立的协议

然后其它的协议,以继承扩展对方协议的方式发布:

比如 Mozilla Public License Version 2.0

可以申请对方发布一个
Mozilla Public License 2.0 IN Anti 996 Version
这样的形式。

比如GPL
则是GPL IN Anti 996 Version

潜在的兼容性无法避免。

一般的想法是修改其它协议变成Anti-996-License,

但是996ICU协议的核心条款其实只有一条。

避免形式上的冲突可以省却不少时间和麻烦。


In my raw thoughts, I agree with this solution in LICENSES

  • an individual Anti-996-License, restraint just more than MIT.
  • a tenderer License which could attach to other Licenses but not cause problems on it.

As for famous Licenses, like GPL or MPL, could extend it but intrude it.

for example:

as Mozilla Public License Version 2.0, it's Mozilla Public License 2.0 IN Anti 996 Version.
Same as GPL. like GPL IN Anti 996 Version

In normal thoughts, it's adjusting other Licenses to fit Anti-996-License, but core items of Anti-996-License are less.

avoid conflicts with other License will save time and vitality.

@ff4415
Copy link
Contributor

ff4415 commented Apr 2, 2019

我认为对于MPL 和GPL 来说,协议约束要强于 Anti-996-License。 从而 导致 Anti-996-License 失效, 或者破坏对方的效力。

@ghost
Copy link

ghost commented Apr 3, 2019

支持开源 支持添加具有效力的协议

@ThinkLoudly
Copy link

@kattgu7 反996许可与开源定义第五条冲突。

美国已有先例。例如去年美国ICE的事让一些开源项目在许可里加入了禁止向包括微软在内的一些公司授权,后来被认为违反开源定义第五条,revert了。

@ThinkLoudly
Copy link

我其实不是很明白,法律已经明确了的违法行为,何必再用一个依靠法律来实现约束力的许可呢?虽然我没数据,但我猜国内因违反开源许可而起诉的案例可能比劳动仲裁的案例少很多吧。

另外需要意识到,有些开源项目是有大厂的贡献的,如果到头来不让它们使用自己曾经贡献过的代码,我觉得有点过河拆桥了。我认为应该放弃阻止个人或组织使用开源代码,转为以普及劳动法相关条款、提高开发者维权意识、降低维权成本为主,避免盲目维权,少走弯路。

@plucky-groove3
Copy link

plucky-groove3 commented Apr 4, 2019 via email

@ff4415
Copy link
Contributor

ff4415 commented Apr 4, 2019

#10 (comment)


许可证的选择权利在项目创建人的手里。
法院只有法律解释权力,而没有执行权力。

@Tedko
Copy link
Collaborator

Tedko commented Apr 4, 2019

#21 (comment)

@ThinkLoudly
Copy link

@Tedko GPL是GNU的许可,禁止个人或组织使用开源代码也是违反GNU哲学的。如果这个许可既不符合开源定义,又不符合GNU哲学,我认为是无法满足Github官方收录条件的。

如果一定要禁止别人使用,我觉得可以考虑从开源和自由软件中独立出来,这样才能摆脱相关理念的束缚,也就无所谓兼容不兼容了。不过我希望发起者和参与者能重新思考这个运动的目标,禁止别人使用只是方法,而且是众多方法之一,也不一定是好方法。

@plucky-groove3
Copy link

plucky-groove3 commented Apr 4, 2019 via email

@Tedko
Copy link
Collaborator

Tedko commented Apr 4, 2019

谢谢讨论和建议

@ff4415
Copy link
Contributor

ff4415 commented Apr 4, 2019

我把第五条贴一下。

  1. No Discrimination Against Persons or Groups
    The license must not discriminate against any person or group of persons.

Rationale: In order to get the maximum benefit from the process, the maximum diversity of persons and groups should be equally eligible to contribute to open sources. Therefore we forbid any open-source license from locking anybody out of the process.

Some countries, including the United States, have export restrictions for certain types of software. An OSD-conformant license may warn licensees of applicable restrictions and remind them that they are obliged to obey the law; however, it may not incorporate such restrictions itself.

最后有提到,面对国家法律 license 不强制执行法律,但是可以提出 违法警告。

这个是否可以作为一个约束力底线, 至少,可以在开源定义范围之内,达到“在香烟盒上 印上 吸烟有害健康” 的效果。

其次,进一步设想,是否可以在触犯底线之后达到 协议提权的效果,比如,违法之前,是MIT相关,违法之后,提权到GPL, 这样。

@ff4415
Copy link
Contributor

ff4415 commented Apr 4, 2019

毕竟现在这个事情 不是 针对某个特定 集体或个人,而是996作为一种 文化,威胁到了整个社区。

是理念间的对立。 反对的是一种文化。

在这个层面上面,首先 应该 表面立场: 996文化是有害的。

具体得失是次要考虑的。

@ff4415
Copy link
Contributor

ff4415 commented Apr 4, 2019

什么是自由软件?

里面有提到 自由软件”不等于’非商业软件‘

其次存在Copyleft

Copyleft不同于传统的公共领域(public domain)。因为公共领域的作品,任何使用者虽然都可以使用,但可以不回馈变成已用;而Copyleft作品的使用者若在发布的时候不按Copyleft的许可证要求保持同样的授权条款,并将更改的版本回馈社群的话,就是违反著作权法的侵权行为。

Copyleft授权许可有时被认为具有“传染性”,因为任何从Copyleft许可衍生出的作品也必须是遵守Copyleft许可的规定。“传染性”虽然带有贬义,但是这与病毒的传染并不相同,因为病毒的传染是通过不为用户所知道的途径传播的;Copyleft则是公开透明的。


那么是否可以在license中设定一种开关机制,在特定条件触发的情况下,协议将从Copyright变更为Copyleft

@ff4415
Copy link
Contributor

ff4415 commented Apr 4, 2019

自由度0 保护的更多是软件的使用权,而不是软件使用者。

可以考虑 把 强制 软件使用者 回馈开源社区 作为一种惩罚。


GPL 和AGPL 对大厂是比较致命的。 以MySQL为例,ali 对其做了大量优化,它可舍不得开源。
这个例子可能有点不当。不过国内大厂对开源社区的贡献和他的市值不匹配。

@ff4415
Copy link
Contributor

ff4415 commented Apr 4, 2019

其实我认为: 996文化有害程序员社区 这句话能够达成病毒式传染。挂在每个repo上面。

完成这种事情本身就是有用的。

@1989wanghang
Copy link

同意楼上。不要限制太多,我觉得规定到要求必须将 996是可耻的置于文件与发布说明,甚至产品的ppt中。达到宣传的目的即可。让观念深入到下一代程序员,甚至普通人心中。资本家觉得我们cheap,他们使用的996行为更cheap。

@yyrdl
Copy link

yyrdl commented Apr 4, 2019

其实我认为: 996文化有害程序员社区 这句话能够达成病毒式传染。挂在每个repo上面。

完成这种事情本身就是有用的。

  • “程序员” 这个词建议改成工程师,考量是 “身份” 问题,并不是任企业宰割的某某某,一直以来我们都太忽视自己社会地位了。

  • 关于“No Discrimination Against Persons or Groups” 我觉得没违背,因为我们并没有指名道姓说谁谁谁不能用(这是诡辩么,hhh)

  • 感谢Tedko 和 kattgu7 的出色工作!手动点赞 (^_^). License 兼容性问题我觉得倒是其次,而是如何在理念上让别人接受,我没出过国,不清楚国外不同文化背景的人对此的看法

  • 996ICU道出了社会现象,还需要往理论升华,可以从 经济、人权、法律、开源软件历史演进进程、人类文明演进进程多方面进行系统论证,

开源软件作为生产资料,在生产资料里面附加协议还是比较先进的尝试的,古时候打仗都讲究一个师出有名,这个协议可以创造出这个名

  • 实际上996ICU就是要往开源文化 “自由”、“分享” 的核心价值观里面再加一个成员 ---- “保护劳动者权利” ,啊 ,赤裸裸的野心 ,偷笑。(立马严肃) 在我看来这是进步的,所以在往996ICU 提的关于"原则 和 目的"的PR 里面包含了关于 Anti-996 License 进步性表述,

emmm..... 我到底要说什么,白天敲了一天代码,脑子有点不好使,后面比较乱了,还是争取一条条清晰的列出观点吧

  • 理论 很重要,当年毛大爷这辈老人打天下的时候都是先搞理论,如果需要在多数人中达成广泛共识, 一定需要 理论 来支撑, 除此之外还需要 事件利益 , 事件是契机,这个已经有了,利益这个点也很明白,Anti-996 License 站在开发者(劳动者)这一边,就缺理论。 高素质、高学识的人需要 客观的 理论 来说服他们。 我相信 Tedko 和 kattgu7 参与这件事 绝对不是为了凑热闹或者是出名, 一定是出于某种社会责任感。同样, 那些开源大神 也绝对不会因为 996ICU的 star 增长速度多么多么高, 而接受 Anti-996 License, 只能吸引他们看一眼,发表一下评论而已,但如果触及他们 的 理论认知就不一样了。 所以我们需要一篇 paper , 我要狗带了,最不会的就是写paper,还不知道这个内容属于哪个学科的范畴,反正就是觉得 996ICU 可以往理论这一方向再升华一下 ,跪求各路大神,我要去社区卖膝盖 T_T

胡言乱语 不知所言 与君共勉 吃夜宵不会长胖

@kattgu7
Copy link
Owner Author

kattgu7 commented Apr 5, 2019

已经在联系Open Source License方面的专家Heather Meeker,希望她会给我们提供帮助。
另外,UIUC法学院再联系我写一篇这方面的论文,希望这件事希望能从学校,特别是工程学院的老教授那里开始发酵(毕竟UIUC也是一些License的发源地)

@ghost
Copy link

ghost commented Apr 5, 2019

#31

@jerrywdlee
Copy link

jerrywdlee commented Apr 7, 2019

@kattgu7 反996许可与开源定义第五条冲突。

美国已有先例。例如去年美国ICE的事让一些开源项目在许可里加入了禁止向包括微软在内的一些公司授权,后来被认为违反开源定义第五条,revert了。

什么是自由软件?

里面有提到 自由软件”不等于’非商业软件‘

其次存在Copyleft

Copyleft不同于传统的公共领域(public domain)。因为公共领域的作品,任何使用者虽然都可以使用,但可以不回馈变成已用;而Copyleft作品的使用者若在发布的时候不按Copyleft的许可证要求保持同样的授权条款,并将更改的版本回馈社群的话,就是违反著作权法的侵权行为。

Copyleft授权许可有时被认为具有“传染性”,因为任何从Copyleft许可衍生出的作品也必须是遵守Copyleft许可的规定。“传染性”虽然带有贬义,但是这与病毒的传染并不相同,因为病毒的传染是通过不为用户所知道的途径传播的;Copyleft则是公开透明的。

那么是否可以在license中设定一种开关机制,在特定条件触发的情况下,协议将从Copyright变更为Copyleft

我突然有个不成熟的建议:
本软件的使用必须遵循下列许可证之一

  • GPL / MPL 2.0 之类的Copyleft
  • Anti 996 License

这样既不违反开源精神,又能狠狠的恶心商业公司一把。

============= UPDATE ===============

Just add License like

/**
 * Copyright (c) 2019 Jerry Lee <jerrywdlee@gmail.com>
 *
 * This project is dual licensed under
 * Anti 996 License Version 1.0 & Mozilla Public License 2.0
 *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * See Anti 996 License Version 1.0 Here:
 * https://github.com/jerrywdlee/no-cron/blob/master/LICENSE#L5
 *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * See Mozilla Public License 2.0 Here:
 * https://github.com/jerrywdlee/no-cron/blob/master/LICENSE#L52
 *
 */

Check HERE for more info.

@Tedko
Copy link
Collaborator

Tedko commented Apr 7, 2019

dual license有意思!

@Tedko
Copy link
Collaborator

Tedko commented Apr 7, 2019

知乎上有一位答主写了这些 https://www.zhihu.com/question/317920060/answer/643386522

我会和这位答主也讨论讨论,其实很多点我们当时想到了 但是也没有很好方案

@FrankHB
Copy link

FrankHB commented Apr 8, 2019

@ThinkLoudly

我其实不是很明白,法律已经明确了的违法行为,何必再用一个依靠法律来实现约束力的许可呢?虽然我没数据,但我猜国内因违反开源许可而起诉的案例可能比劳动仲裁的案例少很多吧。

另外需要意识到,有些开源项目是有大厂的贡献的,如果到头来不让它们使用自己曾经贡献过的代码,我觉得有点过河拆桥了。我认为应该放弃阻止个人或组织使用开源代码,转为以普及劳动法相关条款、提高开发者维权意识、降低维权成本为主,避免盲目维权,少走弯路。

在责任上,使用不同许可证进行的是豁免,而不是约束。提供强制约束的仍然是法律,因为没有许可证,按版权法的默认条款会造成潜在的侵权风险,遵循许可证允许免除这样的风险和责任。和传统开源许可证相比,新的许可证只是豁免的条件更严格了。而要以其它的影响来评价,开源许可对现有需求来讲是最软弱的。你可以使用类似的逻辑诘问 FSF ,为什么在有开源的许可下所谓“自由软件”(注意 FSF 定义的自由软件的许可明显比多数开源许可更不自由)仍然是必要的?(和这里情形的差别也就是自由软件运动历史上更早而已。)

开源跟大厂也没有直接关系。你引用的 OSD 第 5 条强调的是非歧视,强调参与者地位的公平性,正好和这个提法相反。平衡大厂和其他开发者利益的“生态”建设,并不是开源运动自身的一部分,而是需要协调的外部环境——尽管这点被时常混淆。

此外,就字面上来说的 not discriminate 是否和新的许可证必然冲突,仍然是个问题。许可证的文本明确的资格并没有区分具体对象(禁止特定企业),使用黑白名单可以是许可证之外的用于判断前置条件的个别行为,而不是许可证要求的义务。一般意义上,企业应能自主决定是否满足许可证的条件,这里的冲突是不应当存在的;如果否认这点,这跟所有 copyleft 许可中要求同时提供源代码才能取得授权的要求也有类似的冲突,那么所有此类 copyleft 许可都不是符合 OSD 的开源许可,这不符合常理。

@ff4415
Copy link
Contributor

ff4415 commented Apr 8, 2019

@FrankHB

但是要 许可证 符合 OSD 或者 FSF 的认证标准是个问题。

@Tedko
Copy link
Collaborator

Tedko commented Apr 12, 2019 via email

@ThinkLoudly
Copy link

@FrankHB 不知道你说的相似是指什么。GPL并没有限制使用,只是限制分发;只有在得到代码之后才有违反GPL的可能,而不是之前;该限制是为了确保用户自由,明显和禁用条款的目的相悖。而且也不是说非得有个指名道姓的名单才算区别对待,如果按特定行为来划分就不算区别对待,那就可以通过添加多种行为来精确到个人或组织了。我不认为改变话术来规避与开源定义的冲突能让Github官方接受这个许可,我认为官方很明白这先例一开将意味着什么。

@FrankHB
Copy link

FrankHB commented Apr 12, 2019

@ThinkLoudly

首先,对许可证的法律文本来说,“用户”就是 licensee ;除此以外的“确保用户自由”(例如 FSF 所谓的“自由之零”)只能是表明 licenser 和特定涉众的态度(特别是“用户”还有不确定第三者的情况),并不直接确保法律效力。在版权法的意义上,这样的权利通常也无从确保,因为除了涉及衍生作品和演绎的具体权利,版权法不并直接明确什么是对软件的“使用”;而更具体的专门法可以对软件有附加的限制,这又是一个想要尽量兼容不同管辖的许可证无法阻止的。具体到 GNU GPLv3 ,其中强调的保证用户使用软件的基本自由的条款设计,实际上仅限要求 licensee 不得对用户依照所谓的 Anti-Circumvention Law 附加限制性条款这类特定的情形,而并不要求向用户提供一般的合法可用性担保(实际也没法完全做到)。

其次,之前提过多次,许可证是获取授权的方式。不满足许可证的条件,则不会由许可证取得合法授权。非源码形式的“使用”也依赖 GNU GPL 等许可证显式地许可而避免落入版权法中限制使用的情形,因此在没有得到源代码而仅得到二进制形式时,仍然可能因为(包括非源码形式的)使用造成侵权。这种由许可证免除法律限制的机制是各个管辖普遍共通的(尽管限制可能各有不同),并不因为授权针对的代码形式和具体条件的变化而有区别,也不依赖开源的定义而有所变化。

举个例子,一个以 GNU GPLv3 许可证授权的软件,因为某些原因只提供捆绑了源代码、二进制代码和许可证文本的光盘映像;一个用户提取了其中的二进制代码和源代码但遗漏了许可证文档在网络上进行分发;你下载了这个没有许可证的版本并使用了其中的二进制代码。那么技术上,提供遗漏许可证文档的用户和你都有可能直接构成侵权(具体细节按依管辖有所不同)。虽然一个是(包含源代码的)“复制”,一个是“使用”,具体侵权的理由并不同,共同点是,因为 GNU GPLv3 中规定了具体条件没被满足,这类情况也通常不满足版权法规定的合理使用或法定许可的情形。(具体来讲,前者比较直接: GNU GPLv3 Conveying Verbatim Copies 要求 and give all recipients a copy of this License along with the Program ,而专有复制权是各个版权法普遍保护的;后者则依赖适用的管辖,如《中华人民共和国计算机软件著作权保护条例》第三十条“软件的复制品持有人不知道也没有合理理由应当知道该软件是侵权复制品的,不承担赔偿责任;但是,应当停止使用、销毁该侵权复制品。”)

第三, GNU GPL 中的向下游 licensee 提供源码才有权提供源代码的条件,这种条件不应具有特殊性(之前也提过,唯一的特殊性是 GNU GPL 比 OSD 更早,这跟内容无关),有理由认为也是一种“特定行为”。这就和这里的情形有相似性。

至于“如果按特定行为来划分就不算区别对待,那就可以通过添加多种行为来精确到个人或组织了”,逻辑上是不通的。会构成区别对待的理由的,并不是授权的条件,而是“精确到个人或组织”这一结果。许可证的条件应当是明确的,不会有任意添加以至于会有这样的结果的余地。

另外,请注意,开源的普遍含义不由 GitHub Inc. 决定。解释 OSD(Open Source Definition) 的是 OSI(Open Source Initiative) 。一直以来主张 Free Software 的,是 FSF(Free Software Foundation) 。让 GitHub 接受许可证不是讨论许可证符合开源定义的直接目的。反过来,解决兼容问题使之符合某类许可证的定义,倒是更容易(也是现在看来唯一可能)实现这个目的的途径。

@ThinkLoudly
Copy link

@FrankHB 咱们好像有什么误会。如果你觉得我误解了你,望指正。

我的主张很简单:禁止条款与OSD冲突,与OSD冲突就不该叫开源许可或者自由软件许可。你前面说本许可与GPL类似,还说本许可并没有区分具体对象,我认为你是想说明本许可与开源定义不冲突,我也认为这是咱们有实质分歧的地方。然后针对你说的这些,我说了几个GPL和本许可的区别,以及为何不同意你没具体名单就不算区分具体对象的观点,以支持我的主张。

之后你的回复却多次提及版权法,我就不太清楚你想表达什么了,看起来你有研究也很认真,但好像和我的主张关系不大。我先解释一些我认为可能存在误解的地方,以便后续讨论:

  • 如果你想从版权法的角度合理化禁止条款,我并不反对。我只是不希望看到人们以开源之名制裁与自己道德标准不同的人。我在早些时候的评论里也说过,可以考虑从开源和自由软件中独立出来,这样作者想禁止谁用就禁谁用。
  • 我说的使用跟是否有编译好的二进制无关。毕竟脚本语言写的代码也可以用GPL。
  • 我提到确保用户自由,是因为我想说明GPL中的限制与本许可的限制目的不同。并不是想论证确保用户自由和许可的法律效力之间的关系,或者论证法律能在多大程度上确保用户的自由。
  • 是否符合开源定义,直接影响许可的兼容性(这也是我在这个issue中评论的理由),同时也影响是否符合Github官方的收录条件。如果你看过相关报道你就知道 @Tedko 他们的目标之一就是希望Github能够收录这个许可。你说让 GitHub 接受许可证不是讨论许可证符合开源定义的直接目的,那直接目的是什么呢?

对不住各位issue的订阅者,希望没把讨论搞复杂。

@FrankHB
Copy link

FrankHB commented Apr 13, 2019

@ThinkLoudly

  • 我不认为不附带黑名单的禁止条款和 OSD 有冲突。你对这个分歧的理解是正确的。
    • 之前提过,要承认这个冲突,和 GNU 系列的许可证和 OSD 相容的事实有逻辑矛盾。
    • 退一步讲,即使有冲突,认定冲突最终需要 OSI 明确。如果 OSI 承认有冲突,那么它需要解释上述的逻辑矛盾。我不认为 OSI 能在不修改现有条款的前提下能随便把这个矛盾打发掉。
  • 版权法的问题跟 OSD 不直接相关。
    • 强调版权法,是因为这(配合限制 relicensing )是 GNU 风格的 copyleft 许可证实际的威慑作用的来源。这和这里的情况是一致的。
    • 确保版权法(或者替代版权法的其它法律,但是这里没看到)能起到作用是这里需要的许可证能发挥实际作用的首要因素。符合 OSD 本身不是目的,它不应该比这点优先考虑。
    • 在讨论时首先提出阵营对立来针对性限制完全是另一种做法。这也是造成和 OSD 潜在冲突的基本来源。这种做法才是有“开源之名制裁与自己道德标准不同的人”之嫌的问题。强调版权法起到的作用的另一个理由是显式地避免依赖这种做法的描述。(相比之下, FSF 就完全不避讳这点,但他们至少分得清什么东西才应在 legal text 里表达。)
  • 我不同意这里起草的公共许可证应该为“作者想禁止谁用就禁谁用”服务,或者这至少不应是起草许可证的首要目的。但是,即便不是这样,这和现有开源和自由软件的目的和做法已然都不一样,尽管和 FSF 起草 GNU GPL 实现目的的做法有类似性。
    • 我拿 FSF 的情形类比,是因为我认为这种情况和自由软件不能直接兼容,但仍应能够和 OSD 相容(既然 GNU GPL 不与 OSD 矛盾)。
  • 关于“使用”的自由,其实有几个不同范畴的问题。
    • 明确目的是应当的前提,只是这无法代替对法律问题和建筑在法律基础上的作用机制的讨论。
    • “使用”不是版权法直接普遍限制的权利,但是我举例表明版权法仍能对此起到作用。这种作用是现实中各种通过许可证表达的目的能实现多少的重要因素。
    • FSF 毫无疑问地主张维护(最终)用户的自由。但是,我举例表明 GNU GPLv3 对此实际上能做得很有限(虽然考虑法律问题,其实需要做的也很有限……)。这说明,体现在许可证中能起到作用的文本和原始的目的是存在距离的。
  • 这个问题讨论的是兼容性。关于 GitHub 收录,有专门的问题讨论。不过我可以在此简述对收录问题的和本问题相关的意见。
    • 就 GitHub 的收录要求,许可证兼容性是现在剩下的无法回避的问题。
    • 如果能符合 OSD ,那么可能可以解决一揽子问题(考虑到无法符合剩下两个清单的要求);否则,我同意 GitHub 不太可能会愿意提供特例。
    • 在最糟的情况下,无法满足 GitHub 收录的条件,仍然不表示起草许可证和讨论许可证兼容问题没有意义

@Tedko
Copy link
Collaborator

Tedko commented Apr 13, 2019

Hi谢谢楼上两位。具体问题我觉得katt会参与讨论更好。

关于名称 我们曾经有想过Ethical Software. 但现在还倾向于落实在free名下

@ThinkLoudly
Copy link

@FrankHB 感谢回复。大致明白你的意思了。看起来你是坚持认为“禁止条款与OSD冲突”和“GPL与OSD不冲突”存在矛盾。关于这个问题我认为我上面已经解释了,可能不够说服你,我认同你说的最终需要OSI明确。No Harm许可证的一个PR中有来自OSI官方人员对No Harm许可证的评论,你可以参考一下。我只贴个tldr,就不@那位官方人员了,毕竟这里对话全是中文。如果你愿意的话可以考虑新开一个issue和OSI官方交流一下你认为存在的矛盾。

The "Do No Harm" license conflicts with the Open Source Definition and thus is not an open source license; creates ambiguity around the label "open source" harming the open source movement itself, breaks the open source value proposition for both the project and adopters, and I believe would be practically impossible to enforce.

@Tedko 感谢告知进度。当然,能落实在free名下确实能扩大影响力。不过我觉得,只要通过许可搞社会运动的需求持续存在,那就会不可避免地独立出来,根本原因在于其它社会运动与开源运动、自由软件运动的目标不同。或许你们有其它考量。顺便问一下Meeker女士对双许可的方案有什么意见么?

@bingao
Copy link

bingao commented Apr 14, 2019

@ThinkLoudly @FrankHB
关于GPL为什么不和OSD冲突,有这样一篇文章:作者Eli Greenbaum,发表在Cardozo Law Review. Apr2016, Vol. 37 Issue 4, p1297-1343. 47p.

http://cardozolawreview.com/wp-content/uploads/2018/08/GREENBAUM.37.4.pdf

在1312页,有这样一段话:

In the language of anti-discrimination law, the non- discrimination requirement is generally seen as prohibiting the “disparate treatment” of users, but is not understood to prohibit licensing terms that have a “disparate impact” on certain uses.

我的理解是GPL并没有区别对待用户,而是对某些特定的使用方式有不同的影响,这样是不违反OSD的。至于Anti-996是否和OSD冲突,那还是要OSI还决定的。

@ThinkLoudly
Copy link

@bingao 嗯,这和 @FrankHB 的说法不矛盾。按我理解他的意思是,Anti-996并没有区别对待用户,它和GPL一样只是对用户某个行为做了限制(也就是你理解的GPL并没有区别对待用户,而是对某些特定的使用方式有不同的影响),所以如果GPL不算违反OSD,那Anti-996也不算违反OSD,如果Anti-996违反OSD,就要解释为什么GPL没有违反OSD。然后我的回应是想说明这两种限制是不同的,但好像没什么说服力。大概是这么个思路……

@ff4415
Copy link
Contributor

ff4415 commented Apr 14, 2019

什么是自由软件?

里面有提到 自由软件”不等于’非商业软件‘

其次存在Copyleft

Copyleft不同于传统的公共领域(public domain)。因为公共领域的作品,任何使用者虽然都可以使用,但可以不回馈变成已用;而Copyleft作品的使用者若在发布的时候不按Copyleft的许可证要求保持同样的授权条款,并将更改的版本回馈社群的话,就是违反著作权法的侵权行为。

Copyleft授权许可有时被认为具有“传染性”,因为任何从Copyleft许可衍生出的作品也必须是遵守Copyleft许可的规定。“传染性”虽然带有贬义,但是这与病毒的传染并不相同,因为病毒的传染是通过不为用户所知道的途径传播的;Copyleft则是公开透明的。

那么是否可以在license中设定一种开关机制,在特定条件触发的情况下,协议将从Copyright变更为Copyleft


实际上 我在这里提出的疑问还是没有得到 解答。

既然 GNU Copyleft不违反OSD, 那么把Copyleft 作为惩罚为什么不行。

违反 license 强制开源,那怕是业务程序也是一样强制开源。使用了包含 license 的组件,只要违反了 license,那怕是商业 业务 软件也要必须开源。
这才是传染性。


这样既不违背OSD, 也对公司有所威慑。 为什么不行。

@ThinkLoudly
Copy link

@ff4415 Copyleft和是否违反OSD没有直接关系吧。Copyleft只是为了保证传染性,GPL作为Copyleft的一种实现是不违反OSD的,因为它的限制是为了保证用户自由,而不是剥夺。而Anti-996无论是否有传染性,都会禁止部分用户使用,这是违反OSD的关键。

@yyrdl
Copy link

yyrdl commented Apr 15, 2019

@ThinkLoudly Anti-996 并没有禁止部分用户使用,只是在用户违反License 规定时才认为是侵权,也就是说这个License 给予了所有用户使用的自由,而且这个自由是掌握在用户手中的 。

同时 “不得侵害劳动者权益” 这一规定 又不像 "尊重同性恋"、"信仰宗教"、“不得性别歧视” 这类会因为文化地域不同而出现显著争议,劳动者权益 在任何一个现代 国家都不具有争议性。

还有一点Anti-996 没说清楚,就是用户违反了规定,后来又改正了怎么办?

@FrankHB
Copy link

FrankHB commented Apr 15, 2019

@Tedko 我认为考虑到潜在的混淆和混乱,恐怕最终仍然不得不需要一个新的名称(虽然我一时也想不到合适的)。使用 free 来宣传看上去只是权宜之计。我们仍然需要为此的一些准备。

@ThinkLoudly 感谢提供素材。

关于 “Do No Harm” license 的问题,我同意它应该几乎不可能被 OSI 批准,不过违反 No Discrimination Against Fields of Endeavor 这一条即为充分理由。

这个许可证会被认为违反 No Discrimination Against Persons or Groups ,是因为许可证文本有进一步歧义,会导致判定是否符合条件时不得不有一些副作用,如这里说的:

In order to effectively enforce the “Do No Harm” license, the copyright holder would need to review and approve every potential user of their code before giving a copy away (to use, modify, redistribute)—much like proprietary software developers do, although their review is limited to the check clearing.

我想,在这里起草的许可证需要的条件无疑是比 “Do No Harm” license 的情形好得多的。它并不直接违反 No Discrimination Against Fields of Endeavor ;也不需要有上面的操作问题而违反 No Discrimination Against Persons or Groups 。

关于条件认定操作的明确性,可以参考 @yyrdl 的解释。

另外,我建议合适的时候这个项目的维护者考虑直接咨询 OSI 。

@bingao 基本上,这篇文献的描述和我理解的 non-discrimination 的内涵是一致的。

我的理解是这里的情形和 GPL 本身有一定相似,因为,承诺遵守特定法律(并非担保合法)本身是 licensee 自主决定的事项,而非 immutable individual characteristics 。这和决定是否提供源代码(以满足 GNU GPL 的条件)是相似的——不存在 certain users 因这样做出是否承诺的选择而被区分出 “discrete” groups 或者 “suspected” classes or characteristics 从而存在 disparate treatment 。

虽然在目的上,确实可能有人想利用这样的许可证来 prohibit certain users ,但这样的目的并没体现在许可证上——就像专利本身不是为了排除商业竞争对手而存在的一样,怎么被(滥)用并不影响法律工具的内涵。

而认定是否符合 OSD ,看的也是许可证条款本身。

当然,这件事比提供源代码这样的条件实际更复杂一些。

比如说,提供源代码是不受到管辖影响的事实判断,而是否合法则需要先判断合哪个法。

再如,提供源代码事实上没法撤销(虽然某些版权法普遍有权撤销不过被许可证的条款堵死了……),而(和 @yyrdl 的提问相对)不违法的条件是可能被自主打破的。那么权利是否继续有效?

不过这些是符合 OSD 以外的问题了。

@bingao
Copy link

bingao commented Apr 15, 2019

谢谢。我也非常同意license的作者、负责人在合适的时间咨询、或者提交给OSI。好运!

@bingao
Copy link

bingao commented Apr 15, 2019

有个想法:Anit-996许可证的颁发能否不基于要求用户遵循相关法律,而是要求基于Anti-996发布的软件及其衍生品在使用、扩散、转发等方式中要遵循相关法律。这样,就把从对用户的要求转化为对软件等客体的要求。这样,更符合open source的哲学?

@FrankHB
Copy link

FrankHB commented Apr 15, 2019

有个想法:Anit-996许可证的颁发能否不基于要求用户遵循相关法律,而是要求基于Anti-996发布的软件及其衍生品在使用、扩散、转发等方式中要遵循相关法律。这样,就把从对用户的要求转化为对软件等客体的要求。这样,更符合open source的哲学?

这会使许可证的文本大幅复杂。不过考虑侵权行为和授权的时效相关性,可能本来就没法避免这个复杂性就是了(上面说过,条件至少比要求发布源代码复杂)。

我倒是有另外一个主意:把前提作为显式的承诺并扩大适格权利人范围——比如明确要求允许任意下游衍生作品的自然人在违反条件时起诉,因为侵权会导致下游使用非法副本而可能受到法定限制。

@bingao
Copy link

bingao commented Apr 15, 2019

@FrankHB 谢谢。明确一下我上一条的评论,如果一个简单文本方式的Anti-996就足够通过OSI和OSD,我认为是最好的。我的评论是建立在如果目前Anti-996的版本不被OSI认可的话——虽然希望能被认可:-)

@NickLiu635
Copy link

@Tedko

Dual License的冲突情况下哪个优先是一个没有太多研究的领域。没有太好的办法。

由于我们正在草拟全新的协议(算子),完全可以做到草拟多个子协议,使得对于所有的其它协议,我们草拟的协议(的组合)中,至少有一个能兼容。
(就像CC协议的不同要求一样,不同的要求有着不同的兼容性)

抱歉我有点语死早。。

@firedom
Copy link

firedom commented Apr 24, 2019

@kattgu7 @Tedko
想问一个问题,从目前的996许可证形式来看,它应该属于公法还是私法?应该怎样对其区分?
I have to raise doubts about the Anti-996-License, Is it belong to Public Law or Private Law? How to classify it by attribute? I really appreciate your respond.

@kattgu7
Copy link
Owner Author

kattgu7 commented Apr 25, 2019

@firedom Copyright和contract law都是属于private law的范畴

Repository owner deleted a comment Apr 28, 2019
@CoderYellow
Copy link

其实我认为: 996文化有害程序员社区 这句话能够达成病毒式传染。挂在每个repo上面。

完成这种事情本身就是有用的。

同意,根据GPL官方FAQ ,这应该符合GPL声明,996文化有害程序员社区 这句话再斟酌一下,符合版权声明,比如来自反996联盟之类的,这个声明不抵触GPL还具有传播性,这就够了,反996本来就该劳动法做的事目前,目前这个Anti 996 license反而多此一举,还违反了开源精神。我们只要表明态度就行了。
其次,目前资本家实际上才是推动开源的重要力量,华为就为linux贡献了不少代码。这个协议目前看来连开源社区主流协议Apache都不能兼容,那么加了这个Anti 996 license后不知道到底是限制资本家,还是限制自己,难道要自己重造一遍轮子吗。

@ff4415
Copy link
Contributor

ff4415 commented May 1, 2019

其实我认为: 996文化有害程序员社区 这句话能够达成病毒式传染。挂在每个repo上面。
完成这种事情本身就是有用的。

同意,根据GPL官方FAQ ,这应该符合GPL声明,996文化有害程序员社区 这句话再斟酌一下,符合版权声明,比如来自反996联盟之类的,这个声明不抵触GPL还具有传播性,这就够了,反996本来就该劳动法做的事目前,目前这个Anti 996 license反而多此一举,还违反了开源精神。我们只要表明态度就行了。
其次,目前资本家实际上才是推动开源的重要力量,华为就为linux贡献了不少代码。这个协议目前看来连开源社区主流协议Apache都不能兼容,那么加了这个Anti 996 license后不知道到底是限制资本家,还是限制自己,难道要自己重造一遍轮子吗。


@CoderYellow

我觉得争取员工待遇和促进开源繁荣之间不抵触。
不是所有的企业都是华为。

而且准确的说,应该是研发型企业和大学才是推动开源的重要力量。 但实质上还是依靠的技术人员。
严格的说不是华为贡献了代码,而是华为的员工贡献了代码,根据合同华为拥有版权冠名。

为研发人员提供良好的待遇,也应该是企业竞争的一环。
为开源做贡献和压榨员工之间, 不是充要关系。

我现在想的,

996文化有害程序员社区 这句话达成病毒式传染。挂在每个repo上面

觉得差不多就是现在能做到的全部了。

足够好的项目有议价权力, 完全可以使用完全版权来保护自已的利益。
而主流协议维护的是机构的利益。 机构需要自己发起的项目能够推动下去。
比如大学。
大学经费来源是国家经费和商业合作,他需要广泛的关注,从而在国家预算中脱颖而出, 同时为毕业生背书,争取潜在的资金来源(校友赞助和商业合作)。MIT license被用来展示大学的成果,可以接受。

所以这才是Anti 996 license 有意思的地方。
license 必须要有足够的利害关系,否则就只能停留在道德呼吁的层面。不过就算这样也有用。

荣誉有时候比利益更重要。
拿破仑发明了徽章来鼓舞士兵。
而在这个网络时代。被关注,往往也还能带来利益。
这样就产生了正向的反馈。

@ff4415
Copy link
Contributor

ff4415 commented May 1, 2019

其实现在外部环境这么好,主项目也得到了github内部认可。
可以考虑牺牲一下约束性,优先推动另一个issue或许也不错。

[关于让Github官方认可996 license的讨论]
#11 (comment)


然后如果以后研究更深入了,再考虑出一个2.0版本。

@CrazyBoyFeng
Copy link

现在因为兼容性,无法与开源自由软件互相调用,会极大阻碍该许可证和劳工运动的发展。可否考虑开具不同版本的许可证,类似gnu那样有lgpl,gpl1/2/3,agpl。

  • 极简协议:一句反对996的口号。要求在传播和衍生时必须附加并展示(传染)。这样没限制使用,兼容gnu和osi。可作为其它协议的附加协议。
  • 半强制开源附加协议:不违反劳工公约时适用某商业友好协议(如bsd,mit,apache等,可以给开发者自定这样比较灵活),违反时适用另一个(gpl,agpl,watcom等)。这样也没限制使用,兼容gnu和osi。然后这个附加条款也要有传染性。我不知道如果把sspl纳入选项会不会导致不兼容?
  • 半强制授权附加协议:大概就是当前版本的anti996协议。不违反劳工公约时让使用,违反时不让使用。不过这样一来其实就不是自由开源协议了。局限性比较大。

@FrankHB
Copy link

FrankHB commented Apr 4, 2021

  • 极简协议:一句反对996的口号。要求在传播和衍生时必须附加并展示(传染)。这样没限制使用,兼容gnu和osi。可作为其它协议的附加协议。

我不认为附加具有传染性的义务能兼容大部分 GNU 许可证(如 GNU GPL )。

@CrazyBoyFeng
Copy link

CrazyBoyFeng commented Apr 4, 2021

我不认为附加具有传染性的义务能兼容大部分 GNU 许可证(如 GNU GPL )。

https://www.gnu.org/philosophy/free-sw.en.html

Thus, it is acceptable for the license to require that you change the name of the modified version, remove a logo, or identify your modifications as yours. As long as these requirements are not so burdensome that they effectively hamper you from releasing your changes, they are acceptable; you're already making other changes to the program, so you won't have trouble making a few more.
自由软件可以要求修改版不得使用软件的原有名字发布;不能使用软件的原有商标;必须标明软件来自谁的修改等等。只要这些限制不会明显地限制用户再发布软件的修改版,那么它们就是可以接受的。

与“不得将软件用于某种目的”的声明不同,口号声明的传染性义务并未阻碍用户获得、传播软件。可由以上 GNU 对 Copyleft 释义的举例类推:既然可以规定保留商标声明、保留版权声明之类义务作为附加条款,那么要求保留某种其它的、并未限制用户的声明也是可以接受的。
当然,这个声明义务的约束性很弱,996 企业仍然可以使用该声明义务约束的软件,并假惺惺地打出反对 996 的口号。(这也可以侧面证明,该声明并未限制软件的获得自由和传播自由。)

上面的评论其实讨论过这个问题了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests