果壳网专访,常用开源许可协议介绍

2019-12-01 03:33栏目:互联网知识
TAG:

图片 1视频截图。可以看到叠加在PPT界面上的帮助文本是英文:“Direct, Swipe Pan: Swipe to pan around...”

GPL协议的主要内容是只要在一个软件中使用(“使用”指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费。这就是所谓的“传染性”。GPL协议的产品作为一个单独的产品使用没有任何问题,还可以享受免费的优势。

约丹诺夫:现在透明计算这个想法已经不新了。VMWare(私有软件)和红帽(开源)各自都有一套方案,它们基本上都可以实现这个研究组所展现的内容。红帽的产品名为oVirt,和我的Opaque客户端联合使用,本质上就能达成他们所展示的所有功能。但由于语言因素,我无法准确得知他们研究组到底做出了哪些额外贡献,我非常希望他们能来联系我,甚至是寻求合作,这样让我能做出更大的贡献。

BSD

所以,他们的项目也应遵循GPL,具体什么版本取决于他们用了哪些子项目。bVNC,aRDP和aSPICE的协议是2版,而Opaque则是3版。

BSD 在软件分发方面的限制比别的开源协议(如 GNU GPL)要少。该协议有多种版本,最主要的版本有两个,新 BSD 协议与简单 BSD 协议,这两种协议经过修正,都和 GPL 兼容,并为开源组织所认可。

2015年1月9日,国家自然科学一等奖授予了计算机科学家、中国工程院院士张尧学及其团队。但这一奖项立刻引发了争议,许多研究者认为这一项目太偏向工程,太过普通,《科学》杂志的官方网站也对此进行了报道。

MIT

约丹诺夫:我注意到的一个奇怪的事情是,他们在移动端演示的输入法都是英文。我希望他们能开发一种输入汉字的办法。如果他们需要,可以来找我谈谈。我倒的确挺喜欢他们把用户有权访问的远程虚拟机展示出来的方式,我很希望这部分贡献也能反过来融合到我的项目里。

什么是许可协议?

其它细节如再发布的时候需要伴随GPL协议等和BSD/Apache等类似。

(编者注:此处的“承诺”,指的是认证微博账号“透明桌面项目组微博”在新浪微博发布的声明。)

GPL/LGPL都保障原作者的知识产权,避免有人利用开源代码复制并开发类似的产品。

约丹诺夫:有几个因素。

Apache Licence 2.0

果壳网:他们既然是使用了别人的代码,那有没有什么地方他们做得不好?

该软件及其相关文档对所有人免费,可以任意处置,包括使用,复制,修改,合并,发表,分发,再授权,或者销售。唯一的限制是,软件中必须包含上述版权和许可提示。

Apache 协议 2.0 和别的开源协议相比,除了为用户提供版权许可之外,还有专利许可,对于那些涉及专利内容的开发者而言,该协议最适合。

约丹诺夫:我的bVNC是一个虚拟网络计算(VNC)客户端,它是在远程桌面客户端代码库里的源代码基础上开发的。这个代码库里面还有好几个其他的项目——其中有一个名叫aRDP的远程桌面协议(RDP)客户端,一个名叫aSPICE的独立计算环境简单协议(SPICE)客户端,还有一个名叫Opaque的红帽企业虚拟平台开源版(oVirt/RHEV)客户端。这后两个软件包,可能就是透明桌面项目的基础。

这意味着:

果壳网:透明计算这个概念新吗?

MPL License,允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。这种授权维护了商业软件的利益,它要求基于这种软件得修改无偿贡献版权给该软件。这样,围绕该软件得所有代码得版权都集中在发起开发人得手中。但MPL是允许修改,无偿使用得。MPL软件对链接没有要求。

关于GPL授权的详情,请参见这两个链接:

 

果壳网:帮助文本也算吗?

但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:

不过,我并没有下定论说他们是“盗窃”了这些代码。如果他们试图把源代码改换授权重新发布,或者发布了二进制软件而不同时发布源代码,那么这就算是盗窃,不过他们已经承诺不会这样做了。

  • 你可以自由使用,复制,修改,可以用于自己的项目。
  • 可以免费分发或用来盈利。
  • 唯一的限制是必须包含许可声明。

果壳网:你能简单介绍一下你的项目吗?

BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。

约丹诺夫:我使用的授权是GPLv2或者v3,不同子项目版本有差异。这一授权允许别人在满足一定条件的情况下使用我的代码,具体条件可参见GPL相关条目。大致说来,这些条件可以部分概括如下:

需要注意的是,分发的时候,需要明确提供源代码和二进制文件,另外,用于某些程序的某些协议有一些问题和限制,你可以看一下 @PierreJoye 写的 Practical Guide to GPL Compliance 一文。使用 GPL 协议,你必须在源代码代码中包含相应信息,以及协议本身。

约丹诺夫:是的,十分明显他们把我的软件整合到了他们的项目里,这从屏幕上的可绘制对象——Ctrl, Alt, Shift等等的位图按钮可以看出来,还有弹出的信息框(关于当前选择的输入模式的信息和分辨率)也能证明这一点。此外,他们所展示的功能,在我的软件里已经实现了。他们的项目的移动端和我的项目非常相似,几乎到了完全等同的地步(bordering on identical to my project)。

MIT是和BSD一样宽范的许可协议,作者只想保留版权,而无任何其他了限制。也就是说,你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的。
Mozilla Public License

果壳网为此对约丹诺夫进行了专访,他在专访中表示,根据视频可以明确判断出透明桌面肯定使用了他的代码,而且他的代码在其中应该起了很重要的作用。但是,只要项目组愿意将他们的完整成果按照开源软件协议公开源代码,那就不算是违反了软件业的原则——不过,学术领域的原创性就另当别论了。

GNU General Public Licence (GPL) 有可能是开源界最常用的许可模式。GPL 保证了所有开发者的权利,同时为使用者提供了足够的复制,分发,修改的权利:

第一当然是迎接技术挑战、得到学习新技术的机会。这些项目和我作为职业程序员的全职工作完全不同,让我有机会能把时间用在全新的有趣的东西上。

但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因此LGPL协议的开源 代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。

一旦连接到了远程桌面,用户就能输入文本或操纵鼠标和远程桌面互动。远程鼠标操纵可以使用多种输入模式,包括直接模式、模拟触控板模式和单手模式,每一种有不同的优缺点,取决于用户喜欢如何使用他们设备的触屏。

什么是许可,当你为你的产品签发许可,你是在出让自己的权利,不过,你仍然拥有版权和专利(如果申请了的话),许可的目的是,向使用你产品的人提供一定的权限。

版权声明:本文由奥门新萄京娱乐场发布于互联网知识,转载请注明出处:果壳网专访,常用开源许可协议介绍