Questions tagged «open-source»

有关免费提供原始源代码并可以重新分发和修改的软件的问题。

2
禁止转售的开源许可证
我有一个开源项目,它是TFS的一个附件(即,它适用于开发人员和使用TFS的人员。) 当前正在使用GPL。但是我发现GPL并不能真正代表我要使用许可证做的事情。 我希望我的代码对所有想要使用它的人免费。如果修改并使用它,那也很棒。您不必开源修改内容。 但是我想阻止某人构建我的代码并出售它。或对其进行修改并出售。(任何想要这样做的人都必须与我协商单独的许可证。) 是否有一个开放源代码许可证可以防止转售,但允许下载该许可证的个人/公司完全无售卖使用?

2
如果通过笔名进行归属,那么谁拥有代码的权利?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 4年前关闭。 我知道在某些情况下编码人员使用化名而不是其真实姓名。 示例包括: 中本聪(比特币) 为什么(Ruby) 我想知道的一件事是,归因是否通过假名完成,谁拥有代码的权利?

6
如何发现和记录违反GPL的行为?
当您无权访问其封闭源代码时,如何发现某人将获得GPL许可的开放源代码复制到其封闭源商业应用程序中? 编辑:很好的答案!第2部分。如果它是Web应用程序,而您甚至没有访问可执行文件的权限,该怎么办? 方案:他们复制源,对gui进行一些细微更改,因此前端几乎相同;向原本完全相同的后端添加新功能;并且无法将其释放回开源。

8
为什么某些开源库不提供二进制文件?
为什么某些开源库不提供二进制文件?我注意到一些项目属于第三方,后者维护软件的当前版本,尤其是Windows版本。 我问,因为这似乎是采用图书馆的障碍。对于开发人员来说,这是更多的工作,因为他必须设置环境来构建它。开发人员还必须担心他通过错误地构建库而引入了错误。 编辑:一些更新,以解决评论和答案。我删除了这些示例,因为它们不是讨论的中心。也将我的问题改写为“某些开放源代码库提供”,而不是“开放源代码库倾向于提供” ...没有意识到人们会对此表示冒犯。

5
我应该帮助匿名相关项目吗?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 Tor和比特币等增加在线匿名性的项目可以使个人免受政府的压迫,但也可以使犯罪不受惩罚。 作为开发人员,我应该为此类项目做出贡献吗?有没有办法强制这些技术不会用于洗钱和儿童色情?

2
如何开源其git存储库中历史上拥有受版权保护的媒体的项目?
我想以免费许可证发布音频指纹识别软件项目,但是存储库包含受版权保护的音频文件。测试用例当前还使用这些文件。如何在不违反版权的情况下以最高版本历史向公众发布代码? 细节: 该代码在git下进行了版本控制。在发布之前,我们会将其全部折叠回一个分支。 有400 MB的音频数据。有些文件是来自Jamendo的免费许可音乐,另一些是我们个人收藏中的MP3。 无论采用哪种方法,我们都将始终保留原始存储库的不变副本,以免破坏项目历史。 主要问题:如何处理公开发布? 从git存储库中删除有问题文件的所有历史记录,并释放更改后的存储库。(v64 指出了执行此操作的方法。) 另外,也可以对代码的当前状态进行快照,甚至不必费心查看预发布代码的公开历史记录。 附带问题:鉴于项目的早期阶段有时需要私有代码或媒体,我们如何首先避免这种困境?

5
如何知道一个开源项目是否已经成熟到可以在产品中使用?
我想将一些开源项目整合到工作中的产品中。我们没有带宽或主题专业知识来自己做。我是通过在Google中搜索找到的。我没有意识到任何利用这些项目的“主要参与者”,但是我对看到的一切感到非常鼓舞。 现在,我有点担心使用joe-blow的开源项目所面临的风险。如果我花了95%的方法,那么剩下的5%可能很容易添加或修复。也许这是不平凡的。 人们如何确定开放源代码项目是否足够成熟,可以在产品中使用? 这不是一个业余项目,因此稳定性,可维护性等至关重要。

1
作者已在带有GNU公共许可证声明的代码中插入了版权-含义?
我在Github上找到了一个我感兴趣的项目,该项目声称是开源的,并且其中包含GPL许可证。 但是原始作者已向每个源文件添加了版权通知。我不知道为什么,但我对为一个总是要有别人名字的项目做贡献感到不对。这确实破坏了社区创造的感觉,并使我对作者接下来可能会选择如何处理该项目感到不安。 如此对开源GPL代码进行版权保护有什么含义?这对原始作者有何影响? # Copyright (C) 2012, 2013 __AUTHORNAME__ # This file is part of __PROJECTNAME__. # # __PROJECTNAME__ is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 …

2
我应该如何选择持续集成工具?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 5年前关闭。 我在Wikipedia上找到了这个很酷的用于集成服务器的比较表,但是我不确定如何对工具进行排名以及我的需求和兴趣。图表本身似乎有很多标记为未知的框,因此,如果您愿意在Wikipedia上进行更新,那也可能很棒。 是否有一些性能最好的产品,所以我可以迅速缩小到四个或五个选项? 哪些产品似乎拥有最大的用户群体,以及最新的增强功能以​​及与新工具的集成? 开源产品是最好的吗?或者是否有高质量的工具对家里的单个用户来说可以是很多东西? 使用多个系统(主台式机,仅限本地局域网的家庭服务器,个人和工作笔记本,分布在所有主机上的多个虚拟机)是否会造成问题,以及如何对其进行管理?

4
内部代码是否应与组织中的非开发人员共享?
在我工作的地方,我们有很多开发人员,并且有大量代码在运行我们的员工和客户使用的专有应用程序。 我们也有很多聪明的支持人员,他们希望了解我们系统的内部工作原理,以便更好地为客户提供支持,甚至不时提交补丁。 我们是否应该开放我们的代码以供非开发人员阅读?做出此决定时,应考虑哪些因素?我以各种方式遇到了很多论点和反论点,并希望根据他人的经验以及容易理解的风险来做出决定。 迄今为止的一些争论: VCS中的密码是公开的(解决方案:删除密码-不应从那里开始) 代码对白盒安全攻击开放(反参数:这只能阻止诚实/懒惰的攻击者) 支持人员可以询问开发人员“工作”的方式(计数器:教男人钓鱼等) 是否有人向其组织的员工开放代码?有什么问题吗?

7
开源礼节
我已经开始在Codeplex上进行我的第一个开源项目,并遇到了一些糟糕的代码。(我确实了解到C#仍然具有“ goto”语句),我开始添加“所有者”想要的功能,并在探究了代码库并看清混乱之后(例如使用“ goto”),我想清理它一点点。但是我有点担心,这就是为什么我转向所有人:“修复”“错误代码”对我来说是适当的礼节,还是应该让它继续进行新功能?就像我之前说的,我是整个OSS领域的新手,并且通常在一个团队中工作,所以我不想搞砸。

2
如何正确许可开源软件
我有一个正在进行的项目,我想将其作为开源引入新的公共Github存储库。在StackExchange上搜索要使用的正确许可证之后,我就确定了BSD许可证。 我的问题是:现在呢?我是否只需要将BSD许可证文本复制到存储库根目录中的一个名为LICENSE的文件中,并称其为好?这是所有开源许可证如何工作的一般规则吗?还是我需要通知其他组织我正在使用此许可证,以便在必要时可以“强制执行”?

6
开源而不是自由软件(反之亦然)[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 自由软件基金会对“自由软件”的定义: “免费软件重在自由,而非价格。要理解这个概念,您应该将“自由”视为“言论自由”,而不是“免费啤酒”。 自由软件是用户自由运行,复制,分发,学习,更改和改进软件的问题。更准确地说,这意味着程序的用户拥有四个基本自由: 出于任何目的运行程序的自由度(自由度0)。 自由学习程序的工作原理,并对其进行更改以使其按您的意愿进行操作(自由1)。前提条件是访问源代码。 重新分发副本的自由,以便您可以帮助邻居(自由2)。 将修改版本的副本分发给他人的自由(自由3)。通过这样做,您可以使整个社区都有机会从您的更改中受益。前提条件是访问源代码。 如果用户拥有所有这些自由,则该程序是免费软件。因此,无论有无修改,您都可以自由地将副本重新分发给任何地方的任何人,既可以免费获得,也可以收取发行费用。自由地做这些事情意味着(其中包括)您不必征求这样做的许可或同意。 来自开源计划的“开源软件”的定义: 开源不仅意味着可以访问源代码。开源软件的发行条款必须符合以下条件: 免费重新分发许可证不得限制任何一方出售或赠送软件,该软件是包含多个不同来源程序的总体软件分发的一部分。许可证不要求此类销售的特许权使用费或其他费用。 源代码该程序必须包括源代码,并且必须允许以源代码和编译形式进行分发。在某种形式的产品未附带源代码的情况下,必须有一种广为人知的获取源代码的方法,价格最好不超过合理的复制成本,最好是通过Internet免费下载。源代码必须是程序员用来修改程序的首选形式。不允许故意混淆的源代码。不允许使用中间形式,例如预处理器或翻译器的输出。 衍生作品许可必须允许修改和衍生作品,并且必须允许它们按照与原始软件许可相同的条款进行分发。 作者源代码的完整性仅当许可证允许分发带有源代码的“补丁文件”以便在构建时修改程序时,许可证才可以限制源代码以修改形式分发。该许可证必须明确允许分发由修改后的源代码构建的软件。许可证可能要求衍生作品带有与原始软件不同的名称或版本号。 不得歧视个人或团体许可证不得歧视任何个人或团体。 不得歧视任何领域许可证不得限制任何人在特定领域内使用该程序。例如,它可能不会限制该程序在企业中使用或在遗传研究中使用。 许可证的分发程序附带的权利必须适用于向其重新分发了程序的所有人员,而无需那些当事方执行其他许可证。 许可证不得特定于产品程序附带的权利不得取决于程序是否属于特定软件发行版。如果从该发行版本中提取程序,并在该程序的许可范围内使用或分发该程序,则重新发行该程序的所有各方均应具有与原始软件发行版本一起授予的权利。 许可证不得限制其他软件许可证不得限制与许可软件一起分发的其他软件。例如,许可证不得坚持要求在同一介质上分发的所有其他程序都必须是开源软件。 许可证必须是技术中立的。不得以任何单独的技术或界面风格为依据提供许可证。 这些定义尽管来自不同的意识形态,但具有广泛的兼容性,并且大多数自由软件也是开源软件,反之亦然。但是,我相信情况并非如此:软件有可能在没有免费的情况下成为开源,或者有可能在没有开源的情况下成为自由。 问题 我的信念正确吗?软件是否有可能陷入一个阵营,而不是另一个阵营? 真的有这样的软件吗?请举例子。 澄清度 我现在已经接受了答案,但是我似乎使很多人感到困惑,所以也许有必要进行澄清。我不是在问copyleft(或“病毒”,尽管我不喜欢该术语)与非copyleft(“许可”)许可证之间的区别。我也没有问过您对“免费”和“开放”的个性化定义。我在问“ FSF定义的自由软件”和“ OSI定义的开源软件”。两者总是一样吗?有可能没有一个就成为一个? 答案似乎是,没有开放就不可能免费,但是没有自由就可能开放。谢谢所有实际回答问题的人。


1
包括开源软件的许可要求
在一个开放源代码项目中,已经包含了许多其他开放源代码库来实现所需的功能,有些作为库(LGPL),有些作为源代码(非LGPL)。为该项目选择了新的BSD许可证。包含的开放源代码库已获得新的BSD,MIT,Apache和LGPL许可,但没有GPL许可代码。 这些其他开放源代码库应如何入账? 是否所有库许可证都需要包含在主项目许可证文件中? 仅在“帮助”->“关于”对话框和文档中提供指向项目网站的链接就足够了吗? 真的需要信贷吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.