网友奋力抨击微软玩一些假开源的小把戏

因为 Windows 的交叉编译二进制文件比本地构建更容易

我希望微软做得更好,希望 Windows 成为一个不错的开发平台——然而,我经常看到微软在玩开源游戏:宣传他们对开源和开发者的友好程度——只是为了在公司的脚下碾压开发者庞然大物的靴子。

在微软工作的人都是了不起、善良、有才华的人。这是针对公司的领导层,我觉得他在很多场合都压垮了我自己和其他开发人员。这是求救。

“开源”C#、C++、Rust 和其他 Windows SDK 的真实来源是专有的

您可能以前没有听说过它,但是如果您曾经在 C#、C++、Rust 或其他语言中使用过 win32 API 绑定,那么它们很可能是从名为microsoft/win32metadata的存储库中生成的。

不幸的是,这些生成的 SDK 的真实来源——Windows SDK.idl文件——是专有的,尽管它们位于同一个存储库中,根目录下只有 MIT 许可证

派生的社区作品,比如 D 语言、Dart 或 Zig 绑定到由这些文件生成的 win32 API 是否是开源的——如果微软没有这样发布它们?我让你决定。

Azure Kinect DK 不是开源的

如果你是少数几个在 Azure Kinect 开发者工具包上花费数百美元的不幸者之一,你的眼睛会闪烁着可能性,盯着完全开源的microsoft/Azure-Kinect-Sensor-SDK存储库——这可能是短暂的.

不幸的是,Body Tracking SDK 是一个专有的二进制 blob – 因此,如果您希望改进身体跟踪,添加ARM CPU 支持,让它在 Linux 上运行,或者其他任何东西 – 你就不走运了。

.NET 不是开放的

如isdotnetopen.com 所述,尽管尽了最大努力,.NET 仍然不是一个开放平台:

撞击专有扩展以继续锁定 .NET。一种开放的编程语言缺少调试器领导层移除 hotreload 的决定激怒了社区和 devp 员工

我仍然感到震惊的是,他们确实让 .NET 团队dotnet watch在最后一刻恢复了 PR,以便他们可以将其作为一项功能出售。

VS Code 作为开源销售,但它不是

VS Code 周围的信息很清楚,尽管有点滑,关于开源:

Visual Studio Code – 开源(“代码 – OSS”)

该项目采用了微软开源行为准则。

自由的。建立在开源之上。

同时:

  • Python 集成 Pylance 是 100% 专有的
  • vscode-cpptools 是专有的
  • 实时共享不是开源的
  • C# 和 C++ 调试器是专有的
  • WSL 和 SSH远程开发扩展是专有的
  • 遥测是选择退出,而不是选择加入

旁注:如果您正在制作 VS Code 扩展,请同时将它们发布到open-vsx.org,因为 Microsoft已向那些在 VS Code 产品之外使用其扩展注册表的人发出停止和终止通知,因此无法使用在开源 fork vscodium中。

我可以使用专有软件,但不要再将其标记为“由天然成分制成”。

困扰我的并不是这个软件是专有的。我每天都在使用专有软件。我不是什么纯粹主义者。

令我困扰的是,微软推动这些项目是开源的,将它们托管在 GitHub 上,存储库中只有 MIT 许可证,并且在任何地方都没有提及。

然后有人真正关心挖掘,却发现隐藏的专有二进制 blob 并关闭了 GitHub 讨论,结论是“法律说不,我们不会更改许可证”

“由天然成分制成。” 是什么感觉。我也理解他们为什么这样做,如果上面写着有多少人会吃 VS Code 麦片:

VS 代码!来自 Microsoft Corp 的专有编辑器!立即下载!

Windows 开发被破坏(符号链接

虽然我正在宣扬我所有的悲伤,但在过去的一年里,我一直在 Zig 编写游戏引擎 Mach 。你知道 Windows 开发人员经常向我抱怨什么吗?

我尝试过这个。说文件不存在

我将他们指向我们的常见问题解答,它提供了两个选项

  • 选项 1:修复 Windows启用“开发者模式”(警告:这会打开符号链接,微软称其存在安全风险)在 Git 中启用符号链接(开发者模式还不够。)git config –global core.symlinks true重试
  • 选项 2:从 WSL 交叉编译 -> Windows 使用zig build -Dtarget=x86_64-windows
  • 因为不知何故,在 2022 年,从 Linux 交叉编译 Windows 原生二进制文件比在 Windows 上原生构建更容易。

    我希望 Windows 开发者的痛苦故事就此结束

    • 长文件路径:Azure、OpenSearch 和约90 个其他开源项目必须记录如何在 Windows 上启用长文件路径,因为默认限制为约 255 个字符。“哦,但这是一个已解决的问题!,你只需要设置一个注册表项! ” – Twitter 上的 Microsoft PM 告诉我(但是,你知道,要小心,因为根据微软启用此选项可能会破坏文件资源管理器和其他应用程序)(另外,顺便说一句,确保你longfilepaths也在 Git 中启用,因为在 WINdows 中启用它本身是不够的!)
    • CRLF:(另外,你知道配置core.autocrlf对吗?)
    • PowerShell …顺便说一句,Windows 10 附带了一个过时的 PowerShell 版本,其中 HTTP 文件下载速度慢了约 122 倍,你知道你应该更新那个带外的,对吧?因为 Windows 更新不会为您执行此操作。

    Windows 中的开发人员模式又做了什么?

    我对微软的请求

    同样,在微软工作的人都是了不起、善良、有才华的人。我对你没有意见,我相信你正在以同样的方式与微软的庞然大物抗争,以改善开发者的生活。

    我恳求微软做以下事情:

    (1) 停止在“开源”GitHub 存储库中隐藏专有代码

    这不符合开源精神。感觉就像代码“由天然成分制成”。只是为了找到一个钚核心。如果许可证上写着 MIT,则它不应包含专有源代码。

    制定一项政策,永远不要将专有代码放在 GitHub 上。当项目包含专有代码或依赖大量专有代码才能有效使用时,请在自述文件中明确说明。

    我厌倦了通过封闭的 GitHub 问题来发现这一点。

    (2) 修复Windows上的开发者模式

    我只是想重申,真实的人正面临着我上面描述的问题。他们不会经常通过您的反馈中心提出这些问题,您可以在其中计算它们,因为,惊喜!他们只是期望 Windows 开发会像这样痛苦,并期望必须 24/7 全天候使用 Google 解决方法。

    以下是解决此问题的方法:

    如果有人安装或启动开发人员工具(WSL、VS Code、Git、PowerShell 等),则提示他们启用开发人员模式。

    您可以使用这些工具在 Windows 上进行开发,而不知道存在“开发人员模式”,这真是太疯狂了。如果不了解 XCode,几乎不可能在 Mac 上进行开发。

    如果你打开开发者模式,让 Clippy 弹出并提示用户:

    你想让我启用符号链接吗(警告:这是一个安全风险)?

    要我更新 PowerShell 吗?(或者坚持使用文件下载速度慢约 122 倍的旧版本?)

    您要我启用 >255 个字符的文件路径吗?(警告:可能会破坏文件资源管理器和其他应用程序)

    你要我安装 Git 吗?”

    你想让我配置 Git 以使用长文件路径吗?

    你想让我配置 Git 以使用符号链接吗?

    要我配置core.autocrlf吗?

    问题解决了!

    谢谢

    再说一次,我对那些努力改进 Microsoft/Windows 的人们毫不犹豫。这是反馈,我希望您能将其发送给正确的人。

    郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
    (0)
    用户投稿
    上一篇 2022年6月20日
    下一篇 2022年6月20日

    相关推荐

    联系我们

    联系邮箱:admin#wlmqw.com
    工作时间:周一至周五,10:30-18:30,节假日休息