标签 开源 下的文章

开源并不仅仅指的是软件。开源是一种文化现象,自然也适合桌面游戏。

 title=

我喜欢优秀的游戏,尤其是桌游,因为桌游的很多特性都和开源相同。在现实生活中,当你和朋友围坐在桌旁一起玩卡牌游戏时,作为一个团队,你们可以一起决定小丑牌是不是万能的。还有,你们可以随意地决定当出了小丑牌后,手上有 Ace 牌的人的要不要舍弃 Ace 牌,或者出了方块皇后以后,每个人是不是都要把手上的牌传给右手边的人。换句话说,你们可以随心所欲地重新制定规则,因为游戏不过是参与者们一致认同的条件集合罢了。对我来说,更棒的是你可以发明自己的游戏,而不用破坏别人的游戏规则。有时候,我会作为一个业余爱好者来开发桌游。因为我喜欢把自己的爱好结合起来,所以我倾向于只使用开源和开放的文化资源来设计游戏。

首先,游戏有大致有两个关键特征,风格和机制,理解这一点非常重要。游戏风格指的是游戏的故事或者主题,游戏机制指的是游戏的规则和条件。这两者并不总是完全脱离的,举个例子,在设计一款以赛车为主题的游戏时,自然而然就会要求玩家迅速完成动作。然而,风格和机制通常是被分开对待的,所以我们完全可以为了好玩就去创造一款使用标准扑克牌,却以太空羊驼为主题的游戏。

开源美术

如果你去过现代艺术博物馆,你可能会发现自己站在一幅纯蓝色的画布前,无意中听到有人说起老话:“见鬼,这我也能做!”。但事实是,艺术是一项艰巨的工作。创作赏心悦目的艺术品需要付出大量的思考、时间、信心和技巧。这也意味着艺术是你在设计游戏时中最难采购的部分之一。

我有一些“技巧”来解决这个典型难题。

1、寻找同类素材

现在有很多免费、开放的艺术作品,而且大部分质量上佳。问题在于,游戏通常需要不止一件作品。如果你正在设计一款纸牌游戏,你大概至少需要四到六个不同的元素(假设你的纸牌遵循塔罗牌风格),有可能还需要更多。如果你花足够多的时间在这上面,你可以在 OpenGameArt.orgFreeSVG.orgArtStation.comDeviantArt.com 等网站上找到 知识共享和公共领域 Creative Commons and Public Domain 的艺术作品。

如果你使用的网站没有专门搜索 知识共享 Creative Commons 的功能,输入以下文字到任何搜索引擎当中,"This work is licensed under a Creative Commons""本工作处于知识共享许可协议之下"(引号很重要,不要把它们漏了),并用搜索引擎要求的语法,以便将搜索限制到一个具体的站点当中(举个例子,site:deviantart.com)。

一旦你有了一个可供挑选素材的艺术库,那就去辨别这些作品的主题,并根据主题分类。两个不同的人拍摄的机器人的照片可能看起来一点都不像,但它们的主题都是机器人。如果提供给你足够多机器人相关的美术素材,你可以围绕机器人这个主题构建你的游戏风格。

2、委托创作知识共享艺术

你可以雇艺术家来为你定制艺术作品。我与使用开源绘画程序(如 Krita 和 Mypaint)的艺术家一起合作。同时,作为合同的一部分,我规定艺术作品必须在 知识共享署名-相同方式许可证 Creative Commons Attribution-ShareAlike (CC BY-SA)下授权。迄今为止,只有一位艺术家因为许可证的限制拒绝了我的提议,并且大多数人都很高兴自己的美术作品有可能有更大的生命力,而不仅仅是作为业余爱好者自己发行的游戏的一部分。

3、创作自己的艺术

就像现代艺术馆之旅展示的那样,艺术是一个非常灵活的词。我发现只要我给自己设定一个目标,也就是我需要为一款游戏创造多少纸牌或令牌,我便能够从 Linux 上的丰富图像创造工具中选择一种去创作。这并不需要什么高难度的东西。就像现代艺术一样,你可以用蓝色和黄色的条纹,或者红色和白色的圆点花纹,或者绿色和紫色的锯齿线来涂一张卡片,只要你能把它们画出来,那么除了你以外,其他人永远不会知道你暗地里把它们当做仙宫里的贵族和小姐。想想看,通过运用图形应用程序,描摹日常物品的照片,重组经典的扑克花色和塔罗牌主题等一系列方式,你可以创造出的简单作品吧。

版面设计

我用 Inkscape、Scribus 或者 GIMP 来进行版面设计,这取决与我有什么素材以及我追求的设计方式是什么。

对于卡牌,我发现简单的版面设计很容易实现,看上去也更好,纯色比渐变色更容易印刷,还有,直观的图像是最棒的。

 title=

(Seth Kenlon, CC BY-SA 4.0)

我在一个单独的 Inkscape 文件中为我最新的游戏做了版面设计,这个游戏只使用了来自 OpenGameArt.com 上三四个不同艺术家的九张图片。在有着更大的美工集,更好的卡牌多样性的游戏中,我会在游戏中的每一种卡片的文件中为它们设计版面。

在为你的游戏素材做任何版面设计之前,要先了解你的目标输出是什么。如果你打算在家里打印游戏,那就做一些计算,搞清楚默认的纸张大小(有些是 US Letter,或者是 A4)可以容纳多少卡牌、令牌或卡片。如果你使用 TheGameCrafter 之类的桌游打印机打印,请下载好模板文件。

 title=

(Seth Kenlon, CC BY-SA 4.0)

游戏机制

游戏机制是游戏中最重要的部分。它们使一款游戏成为游戏。开发游戏规则并不一定是一个正式的过程。你可以一时兴起地创造了一款游戏,可以拿一个现有的游戏重组它的规则,直到它和原来不同,可以修改一款你不喜欢的游戏,也可以将两款不同的游戏组合在一起。从简单容易的地方做起,拿索引卡,标准扑克牌,或塔罗牌去试着模拟你的想象中游戏是如何工作的。你可以自己尝试早期的游戏创意,但最终,让朋友来帮忙是找出意外故障和进行优化的好方法。

经常测试游戏。与不同类型的玩家一起玩游戏,并听取他们的反馈。你的游戏可能会激发许多玩家去创造新的规则和想法,因此要将关于 哪些搞砸了 的反馈与关于 哪些可以做修改 的反馈分开。你不一定要去真的实施这些反馈意见,只需迭代你的想法,但还是要仔细考虑错误报告。

一旦确定了你想要让你的规则如何运作,就把它们写下来,让它们 简短且容易解析。你定的规则不必说服玩家去玩这款游戏,不必向他们解释策略,你也不必允许玩家重新设置规则,只要告诉玩家为了让游戏玩起来,他们应该采取的步骤就可以了。

最重要的是,考虑一下,将你的规则开源。分享经验是游戏的一切,这其中也应该包括规则。知识共享或 开放游戏许可证 Open Gaming License 的规则集合允许其他玩家在你的作品上进行迭代、混合和构建。你永远不会知道,有人可能会因此想出一个你更喜欢的游戏变体!

开源游戏

开源不仅仅指的是软件。开源是一种文化现象,自然也适合桌面游戏。花几个晚上的时间来尝试制作游戏。如果你是新手,那就从一些简单的开始,比如下面的这个空白卡牌游戏:

  1. 找来一些朋友。
  2. 给每个人几张空白的索引卡,告诉他们在每张卡片上写一条规则。规则可以是任何东西(“如果你穿着红色衣服,你就赢了”或“第一个站起来的人赢”等等)。
  3. 在你自己的索引卡片上,写上 “和”、“但是”、“但是不要”、“而且不要”、“除了”,以及其他的条件短语。
  4. 洗牌并将牌发给所有玩家。
  5. 每个玩家轮到的时候出一张牌。
  6. 最终目标是获胜,但是玩家可以通过出 “和”、“但是”、“或者” 卡片来修改决定胜负的条件。

这是一个有趣的聚会游戏,同时是一份很好的介绍,告诉你如何像游戏设计者一样思考,它帮助你认识到什么适合作为游戏机制,什么不适合。

还有,当然的,这是开源的。

(题图片由 MorningbirdPhotoPixabay 上发布 )


via: https://opensource.com/article/21/12/open-source-card-game

作者:Seth Kenlon 选题:lujun9972 译者:hadisi1993 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Windows Movie Maker 标志

这些年来,微软发布了许多开源工具。今天,它正在翻箱底,让 3D Movie Maker 也对所有人开放。3D Movie Maker 于 1995 年首次推出,它允许你用 3D 人物、道具、背景、文字、声音和特殊效果来创建动画场景。这个版本还包括一个 Argonaut 软件公司构建的 BRender。虽然这是一个积极的举措,但请先别太激动,事情可没那么容易。

“这个项目不太可能在现代硬件/软件下构建成功,但你可以先开始编译,并获得部分完整的二进制文件。”

以下是它的部分构建说明:

  • 确保本仓库检出到一个名字简短的目录中,最好是靠近驱动器的根路径(即 C:\3d 这样)。
  • 在构建过程中,你需要 Visual C++ 2.0 的开发工具(可以在安装盘的 MSVC20BIN 目录下找到)。有一些源码遵循的是 C++98 之前的规范,因此现代编译器可能不会喜欢它们。
  • 从本仓库的根目录下运行 setvars.bat。你可以改变这个脚本中的值来改变你的构建目标。
  • 查找并安装字体文件(详见 FONTS.md)。
  • 运行 nmake 以开始使用 3D Movie Maker。

这些代码是从微软公司的档案中恢复的,涉及到的第三方软件(如 BRender)已获得授权。同时,它删除了开发者的身份和别名,以便使该软件开源(从事原始发布工作的微软现任员工除外,他们同意保留自己的名字)。你可以在 这里 下载它。


via: https://www.opensourceforu.com/2022/05/microsofts-3d-movie-maker-first-released-in-1995-is-now-open-source/

作者:Laveesh Kocher 选题:lkxed 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

你是否对开源充满热情,却不知道如何在这个领域开始一段职业生涯?那么,这篇文章就是为你准备的。

你知道吗?80% 的维护者认为招募新的贡献者是一个挑战,92% 的雇主认为很难雇用到开源人才。而另一方面,52% 的开发者希望为开源做出贡献,33% 的人不知道从哪里开始,31% 的人认为自己不够熟练。公共数据显示,社会对具有开源技能的人有很大的需求。因此,让我们看看如何才能够把开源作为一份职业,以填补这个供需之间的差距吧!

掌握一个技能

开源旅程的起点仅仅是你擅长的某个技能罢了。许多开发者会在空闲时间从事开源工作,他们在不熟练的领域投入精力,并把这些技能引入到技术领域里来。像机器学习(ML)、云原生和大数据分析这样的技能是很受欢迎的,因为许多项目都围绕着它们而进行。

开发者必须不断尝试,直到找到自己感兴趣的东西为止。例如,当我开始在开源领域工作时,我选择了移动用户界面(UI)和 Web 开发(包括前端和后端)方面的工作。这个选择并不简单,我花了很多时间来弄清楚我想从事什么。因此,重要的是要遵循你的兴趣,通过学习和建立项目来探索不同的领域。很多时候,理论教程可能不如建立实际项目更有帮助。掌握技能的唯一方法是将所学的东西应用到实际项目中。

如果你已经在某项技术和项目上投入了很长时间,那么你应该花时间好好分析一下。如果你对这个项目不感兴趣,那么放弃它可能是更好的选择。然而,这也可能是一把双刃剑。有可能你会发现一些感兴趣的东西,从而产生一个新的权衡。如果经过了充分的分析,你也知道了自己倾向于哪些技能组合,那么下一步就是建立自己的项目。

建立一个项目

无论项目的内容如何,只要它是活跃的,就会产生很大的价值。但请记住,一旦它开源了,你千万不要被大家的反应所左右。并且记住,无论你是为一个应用程序建立一个 UI,还是仅仅记录一个适当的注释、资源或 URL 的列表,你的工作都可以对开源用户有很大帮助。

在很大程度上,学习不同的工具有助于建立开源项目。因此,学习关于版本控制系统、Git、GitHub 和 GitLab(大多数项目都在它们上面)的一切是很重要的。由于互联网上已经有足够的教程,我只收集了一些可以在 navendu.me/osidays 上找到的。你需要通过撰写文档和公开自己学到的内容,来“公开学习”才行。

打造一份职业

你可以通过三种方式在开源领域建立一份职业。

构建、扩展你自己的开源项目,并让它盈利

如果你想要建立一个自己的项目,发现并解决问题是一个很好的经验法则。记下别人可能面临的问题,一个项目需求就这样产生了。你的项目的市场规模只能通过试验和错误来估计。对于既没有太多资金的、也没有太多经验个人贡献者来说,社交媒体、博客、帖子和会议上的讲话,都会在很大程度上有助于接触到用户。这些平台可以为你的开源项目带来巨大的流量。

资金在几乎所有的商业模式中都起着重要作用。Mozilla 基金会依靠自愿捐款来资助其项目。MariaDB 采用了延迟开放源代码的商业模式。IBM 的许多开源项目遵循开放核心的商业模式,即项目的核心部分是开源的,而周围的附加部分是闭源的和专有的。红帽公司不出售代码,而是出售专业服务,如支持、工具和围绕项目的技术援助。这些商业模式的例子可以被采用,以此来建立一个项目,将它开源,并使其盈利。

“即使你不是维护者,也要做维护者的工作。”

在一个以开源商业模式建立项目的公司工作

成为贡献者和维护者社区的一份子,参与会谈和参加会议将有助于你为项目做出贡献。你可以根据引导来完成第一次贡献,但它不一定得是代码。一个大的代码库可能看起来很吓人,但关键是要从小的地方着手。找到一个问题并解决它,这将有助于你了解贡献流程、代码库和项目设置等。

非代码的贡献也是有价值的。擅长写作的人可以通过撰写文档,或者为社交媒体写作来贡献。擅长设计的人,可以设计一个模板、一个颜色方案,或者也可以致力于创造一个更好的用户界面。与资深工程师相比,新人发现错误的概率很高。他们可以测试、确认并报告他们的用户体验,从而提升项目质量。另一个领域是新手引导,很多开源项目将导师和新手联系起来,并帮助后者做出重要贡献。还有一个选择是成为组织者或社区管理员,这意味着你将承担起项目经理的角色,确保功能完全按照预期交付,路线图得到遵循,贡献者得到照顾。大多数开源项目缺乏适当的管理,因为工程师们都不喜欢做这一类工作。

社会上有很多实习项目可以帮助你赚钱,比如谷歌的编程之夏(GSoC)和 Linux 基金会的导师制(在这里,被指导者有津贴,可以根据需要全职或兼职工作)。如果你能很好地发展你的技能,你可以在你实习的公司获得一个全职的职位。例如,如果你在红帽公司的一个项目中工作,你有机会被全职雇用,因为你在那里已经有了知名度。

正如 NumPy、SciPy 和 Anaconda 的作者 Travis Oliphant 所说,“建立一个开源项目,让人们为它做出贡献,然后从他们当中招聘。” —— 这也是我获得全职工作的方式。

  • 随着时间的推移,你所做贡献的质量和数量会不断提升。最好长期参与一个项目,因为这样可以发现更多的贡献领域。投身进去做贡献会让人们注意到并认可你。
  • 开源项目缺乏项目经理,因此成为项目经理将有助于你的职业生涯。
  • 成为一个维护者,做一些工程师应该做的事情,如审阅代码、设计系统、撰写文档和帮助他人做出贡献。
  • 好的贡献的关键是“提前付出”,这意味着你需要通过分享经验和智慧来帮助新人,并确保他们不犯错误。

获得赞助以从事开源工作

作为个人,如果你正在为某个公司建立的项目而工作,你可以要求获得资助。值得注意的是,只有当你的贡献很大时,组织才会乐意赞助你。但是,如果你建立了自己的项目,并且有大量的用户群,你可以向用户要求资助。

作为一个组织,你可以通过像 Open Collective、Patreon 和 GitHub Sponsors 这样的平台来筹集资金,让人们为你的项目捐款。像 Linux 基金会和 Mozilla 基金会这样的开源巨头也提供资金来支持项目。GitHub 已经给 15 个印度贡献者的项目提供了资助。

我曾经花了三个月时间建立了一个开源项目。这个项目后来被 《Product Hunt》 和 《JS Weekly》报道,还在上过 GitHub 趋势榜排名第一的位置。正是这个项目让我走上了开源事业的道路。

本文由 Sharon Abhignya Katta 转录并策划


via: https://www.opensourceforu.com/2022/04/how-to-build-a-career-in-open-source/

作者:Navendu Pottekkat 选题:lkxed 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

事实上,有无穷无尽的方法来为开源做贡献,其中一个简单的方法就是回答我们的投票问题。

你是如何参与开源贡献的呢?我们组织了一个投票,结果如下:

  • 提交错误报告 - 67 票(35%)
  • 解答用户的问题 - 39 票(20%)
  • 写作(指南、故事、文档等) - 73 票(38%)
  • 其他 - 12 票(6%)

我的第一次开源贡献可以追溯到 20 世纪 80 年代中期,当时我们的机构第一次连上了 UseNet,在那里我们发现了贡献代码,以及在其开发和支持过程中和别人分享的机会。

在今天,我们有无尽的贡献开源的机会。无论是贡献代码,还是制作一个视频教程,都是贡献的一种途径。

不过,我将直接跳过整个贡献代码的部分。诚然,我们中有许多写代码但不认为自己是开发者的人,他们也可以 贡献代码。但是,我更想提醒大家,还存在很多 非代码形式可以贡献开源。接下来,我会谈到其中的三种。

提交错误报告

有一种重要而具体的贡献形式,它可以被描述为“不要畏惧 提交一个像样的错误报告”以及 与此相关的所有后果。有时,要 提交一个像样的错误报告 是很有挑战性的。比如说:

  • 某些错误可能很难记录或描述。当计算机启动时,屏幕上可能会出现又长又复杂的信息,其中包含各种不能理解的代码。或者屏幕上可能显示有一些“异常行为”,但是却没有提供具体的错误信息。
  • 某些错误可能很难重现。它可能只发生在某些特定的硬件/软件配置上,或者它可能很少被触发,或者错误的产生场景不明确。
  • 某些错误可能与一个非常特殊的开发环境配置有关,但是这个配置庞杂混乱,无法分享,需要先耗费大量精力创建一个精简后的例子才行。
  • 当向发行版报告一个错误时,维护者可能会建议将该错误提交给上游,这有时会需要付出大量的工作,因为发行版所提供的版本不是上游社区感兴趣的主要版本。(当发行版提供的版本落后于官方支持的发布和开发版本时,就会有这种情况发生)。

尽管如此,我还是鼓励那些潜在的错误报告者(包括我)继续努力,并尝试让错误得到完整的记录和确认。

但如何开始呢?你可以使用你最喜欢的搜索工具寻找类似的错误报告,看看它们是如何描述的,它们被归档在哪里,等等。你也可以留意你使用的发行版(例如,FedoraopenSUSEUbuntu)或软件包(LibreOfficeMozilla)的错误报告页面,它们定义了正式的报告机制,你可以按步骤为他们报告相关错误。

解答用户的问题

我潜伏在各种邮件列表和 论坛 里,偶尔也会冒个泡,例如 Ubuntu 质量控制团队论坛LinuxQuestions.org,以及 ALSA 用户的邮件列表 等。在这里,我的贡献可能与错误报告的关系不大,更多的是记录复杂的用例。不过,看到有人热心帮助他人,解决他人在某个问题上的遇到的麻烦,对每个人来说,这都是无疑一种很棒的体验。

从事开源相关的写作

最后,另一个我非常喜欢贡献的领域是 撰写 关于使用开源软件的文章。无论是使用指南,还是对某一特定问题的不同解决方案进行比较评估,或者只是笼统地探索一个感兴趣的领域(就我而言,是使用开源音乐播放软件来享受音乐)。一个类似的选择是制作一个教学视频。你很容易就可以做到边演示一些复杂的桌面操作(比如用 GIMP 创建一个绚丽的标志),边 录制桌面。而那些精通两种或多种语言的人,也可以考虑将现有的使用指南或视频翻译成另一种语言。

(LCTT 译注:读了这篇文章,你是不是想要马上投身于开源贡献呢?那么请考虑加入“Linux 中国翻译组(LCTT)”吧!我们有能帮助你快速上手翻译的 维基,有热心友爱的 QQ 群,你甚至还能够在我们的官网上获得属于自己的译者专页……心动了吗?那就立刻行动起来吧!阅读 维基 以了解如何加入我们。)


via: https://opensource.com/article/19/4/contribute-without-code

作者:Chris Hermansen 选题:lkxed 译者:lkxed 校对:校对者ID

本文由 LCTT 原创编译,Linux中国 荣誉推出

我们收集了一些最受欢迎的简明指南,它们既能满足你充分利用暑假的愿望,又能满足你为下一个学期做规划的需要。

对一些老师来说,夏天到了,一个漫长的(希望也是放松的)假期也到了。所有我认识的老师都是自豪的终身学习者,尽管暑假过后,又有一个新学期会到来。为了帮助你充分利用暑假时间,与此同时也为即将到来的下一个学期做好准备,我们收集了一些最受欢迎的 简明 指南。

如何让你的学校做好准备(在新冠疫情下)

通过 在 Linux 上来完成所有相关工作,Robert Maynord 老师确保了他的学校为远程学习做好了准备,甚至在疫情前他就这么做了。虽然我们还不知道在今年剩下的时间里会发生什么,但是,如果说新冠疫情向世界展示了什么,那就是 数字转型(指把数字技术融入到教育的各个领域)不仅是可能的,而且对教师和学生来说都是有益的。你可能无权在技术层面上改变课堂的运作方式,但你仍然可以做很多小的改变,为学生创造更灵活的学习体验。

为教师准备的终极开源指南

通过本文,你可以学习如何在课堂上 融入开源原则。开源不仅仅和科技相关,它同时也关于知识共享、团队协作以及为了一个共同目标而努力。你可以把你的教室变成一个共享的空间,让学生们互相学习,就像他们向你学习一样。阅读开源,把开源付诸实践,并鼓励学生们积极参与。

8 个为虚拟教室准备的 WordPress 插件

WordPress Web 平台是一个构建网站的强大工具。在教室里,它可以作为教授 Web 技术、创意写作和学术写作的 一个很好的工具。它也可以被用来帮助远程学习,或者是把日常的学校作业数字化。通过掌握 WordPress 的诸多 [附加功能],你可以从中获取到最大的教育收益。

教孩子们写 Python(交互式游戏)

开源工具可以帮助任何人以一种轻松有趣的方式开始学习 Python —— 那就是制作游戏。当然,Python 涉及到很多方面的东西。别担心,我们有一个课程可以带你从安装 Python 开始,通过简单的文本代码和 “ 海龟 turtle ” 绘图游戏开始你的第一步,一直到中级游戏开发。

  1. 首先,安装 Python,阅读我们的 Python 入门文章,熟悉编程的概念。单单是这篇文章里的内容就可以作为两节或三节不同课程的基础哦。
  2. 然后,如果你熟悉 Jupyter 库的话,可以学习 使用 Python 和 Jupyter 来编写一个简单游戏
  3. 接着,你也可以 在这本 Python 电子书里学到游戏开发的知识,里面会教你如何使用 Git、Python 和 PyGame 库。当你学会了这些基础内容,你可以看看 这本书里的 "游戏测试员" 的有趣创作集合

如果 Python 对你或你的学生来说太难了,那么看看 Thine 吧,它是一个简单的基于 HTML 的交互式的讲故事工具。

教孩子们玩树莓派(编程)

我们的指南中有一篇 树莓派入门指南,其中探索了各种帮助孩子们学习编程的资源。树莓派的特点是它足够便宜,只要花 35 美元,你就可以买到一个全功能的 Linux 电脑。然后你就在上面做任何事,不管是基本的 Python 学习还是搭建实际的网络服务器,因此,它有着巨大的教育潜力。你完全可以为每一个学生都配一个树莓派,或者你也可以让班里的学生共享一个树莓派(Linux 是多用户操作系统,只要设置得当,所有的学生都可以同时使用这个树莓派,直到你说服他们的家长购买更多树莓派)。

一起学习

开放课堂的关键之一是要勇敢地和学生一起学习。作为一个老师,你可能习惯了掌握所有的答案,但是数字世界是不断改变和进化的。不要害怕 你的学生们一起学习 Python、Linux、树莓派或者任何其他东西,一起学习新的基础知识、小技巧和解决问题的新方式。开源是一种经过验证的成功方法,所以不要只是教授开源而已,还要让开源在你的课堂上得以运用。


via: https://opensource.com/article/21/6/open-source-guides-teachers

作者:Seth Kenlon 选题:lujun9972 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

商业软件早期版本的复刻不能称自己是“开源替代品”

Neo4j EE 在 2018 年 5 月放弃了 AGPL 许可证,并采用了一个新的许可证。这个新许可证禁止软件的非付费用户转售代码或提供一些支持服务,因此不是开源倡议所定义的“开源”。于是,图基金会和另外两家公司从 Neo4j EE 中复刻了 ONgDB,作为 Neo4j 的“自由而开源”的版本提供。在 2018 年和 2019 年,Neo4j 就商标和版权侵权等问题向它们提出了法律索赔。美国法院裁定,图基金会和另外两家公司不得声称 ONgDB 是 Neo4J EE 的“100% 自由开源的版本”。受到这一系列影响,图基金会撤下了 ONgDB 3.4、3.5 和 3.6。从 AGPLv3 许可的 Neo4j EE 3.4.0.rc02 复刻了 ONgDB,并从 1.0 版本重新开始,取代了它们。

老王点评:如果一个曾经的开源软件变成了商业软件,而你做了一个开源的复刻,那么小心了,你有可能不能说是它的开源替代品。

运行在 M1 芯片上的 Asahi Linux 发布 alpha 版本

Asahi Linux 终于宣布了 alpha 版本,它可以在 M1、M1 Pro 和 M1 Max 等苹果硅 Mac 上测试运行。它基本上是建立在 Arch Linux ARM 之上的,添加了几个相关的软件包。它支持 macOS 和 Linux 双重启动。苹果硅平台完全没有公开文档,这需要开发者们对苹果的 GPU 架构进行逆向工程,并为其开发一个开源的驱动程序。有趣的是,苹果公司允许在无需越狱的情况下在苹果硅 Mac 上启动无签名的或定制的内核,这不是一个黑科技或无意的疏忽,而是苹果在这些设备中内置的一个实际功能。只要不从 macOS 中提取代码来建立对 Linux 的支持,其结果是完全合法的,可以分发和供终端用户使用。事实上。最近发布的 macOS Monterey 12.3 使这个过程 更加简单

老王点评:首先恭喜这个连 Linus 都关注的项目终于迈过了新的里程碑;另外,也为这次苹果的开放态度点赞。

微软的杀毒软件将 Office 更新标记为勒索软件

前两天,微软 Defender 最新推送的的一个更新,让 Windows 管理员们手忙脚乱,微软自己的 Office 更新被标记为勒索软件。在某些情况下,它触发了“大量的勒索软件警报”。这不是微软 Defender 第一次误伤自家产品了,去年 11 月,它还阻止了 Office 文档的打开和一些 Office 可执行文件的启动。

老王点评:据说 Defender 在相关测评中得分还很高。