3 分•作者: turbidimeter•3 个月前
我一直不明白为什么在输入密码之前,我的 Mac 启动时 Wi-Fi 图标就会亮起。 我测试过,远离我的 Wi-Fi 网络时,它就不会亮起。 苹果的支持页面说:“使用 SSH 解锁 FileVault:在运行 macOS 26 或更高版本的 Apple 芯片 Mac 上,如果启用了远程登录并有网络连接,FileVault 可以在重启后通过 SSH 解锁。”以及“FileVault 使用 SSH 解锁以及在某些使用 FileVaultPolicy 和平台单点登录的配置中,都需要网络连接。”[1][2] 所以这意味着 Wi-Fi 密码将存储在 FileVault 加密卷之外。 (存储在哪里?) 这很酷,但即使我关闭了“远程登录”(没有 SSO/MDM),它仍然会连接到 Wi-Fi。我从未同意 Wi-Fi 密码被静默地移出 FileVault 保护。 当然,他们可能会“安全隔区”处理这件事,或者其他什么,但这不一样。 这与我在 iOS 17 中遇到的 iCloud 密码同步自动启用问题类似 [3]。 安全模型在未经用户同意的情况下被更改。不清楚什么东西存储在哪里。 他们只是决定在用户过去做出选择后,某些东西可以自动更改。 我不认为我反应过度。 这似乎是一件小事,但它表明了他们可以(并且确实)做出这样的举动。
1 分•作者: prologic•3 个月前
一段时间以来,我一直难以真正融入移动生态系统。由于谷歌(Android)和苹果(iOS)对移动生态系统的主导地位,开发者很难构建和维护体面的移动应用程序,尤其是当你是一名独立开发者,而 UI/UX 又不是你的强项时。 因此,我(在与朋友 @xuu 一起进行了一些实验后)构建了一个小型的 Go 应用程序框架,它结合了 HTMX、DaisyUI/TailwindCSS 和 Service Workers,并采用了一个效果显著的小技巧,让我能够构建出 3 款相当精美的移动应用程序(可以安装到主屏幕的 PWA)。 如果有人对使用 Web 技术构建下一个移动应用程序感兴趣,并愿意尝试 Swag,我将非常感谢您的反馈/想法!
4 分•作者: ViktorEE•3 个月前
KiCad,一款 PCB EDA 套件,现已支持在浏览器中运行,您可以通过提供的链接进行尝试,其中包含一个演示项目,您也可以导入自己的项目。推荐使用 Firefox 浏览器,Chrome 效果也不错,Safari 尚在“可用”状态。 我们是 Emergence Engineering,一家来自匈牙利的开发公司,主要从事富文本编辑器和 CRDT(无冲突复制数据类型)的开发。PCBJam 最初是我(Viktor,CTO,前电气工程师)的业余项目,但随着时间的推移,我投入了越来越多的精力,一个产品在我脑海中逐渐成型。在过去的几个月里,我们开始更加专注于这个项目,这是我们第一个接近 MVP(最小可行产品)的版本。 这个项目充满了乐趣、学习和持续的改进: - 我曾认为一定有方法可以在 Web 上模拟 PCB 画布的 OpenGL 代码。事实证明,确实有很多方法,但都存在很多 Bug。事实证明,如果添加适当的中间调试步骤,直接编写与 KiCad 图形抽象层(Graphics Abstraction Layer)兼容的 WebGL 代码会更快。我(与 Claude 合作)在每一步都实现了功能并与原生进行了比较,然后应用程序首次加载时就能正常运行。在此之前,我花费了数周时间来修复奇怪的模拟 Bug。 - 一个旧的 wxWidgets Web 移植版本为我们提供了起点,非常有帮助,但将其提升到 KiCad 所需的水平是一项漫长(且仍在进行中)的任务。感谢 ahilss! - Web 上的 Pthreads:借助 Emscripten,可以移植多线程应用程序(DRC、软件 3D 渲染器使用)。Emscripten 的许多功能(Asyncify、Pthreads、原生异常)之间存在冲突,但最终是可行的。 - Asyncify 与原生异常:Asyncify(用于使 WASM 代码挂起然后调用 JavaScript,通过重写 WASM 来模拟阻塞的 C++ 调用)与原生异常不兼容,即使在最新的 Binaryen 版本中,它也无法在 `catch` 块内挂起。如果您编写一个新的 Binaryen pass,就可以实现这一点,从而使 bundle 体积减小 30-40%,应用程序加载时间从 10 秒缩短到 1 秒。 - 优化 bundle 体积是一场有趣的博弈。我们已将 Open CASCADE 移至一个单独的惰性加载 WASM 模块,体积从 180MB 降至 130MB(Brotli 压缩后为 24MB),这仍然是在 `-O1` 优化级别下。`-O2` / `-Oz` 等优化级别的工作量将比看起来更大。 - 以及更多类似的日常问题。 几个月前,我有一个几乎无法加载、卡顿且稍有不慎就会崩溃的 pcbnew,现在整个应用程序都能运行了。我应该说,仍然存在不少 Bug,但现在感觉非常接近原生体验了。 我们积累了大量的知识和代码,希望通过博客文章发布,并将我们的更改合并到 Binaryen / KiCad / wxWidgets 的主线中,但我想首先专注于发布。我们的 wxWidgets 移植版本非常接近核心,KiCad 部分修改了约 150 个核心文件(主要是构建脚本,也有一些代码更改)。目标是尽可能贴近主线,并最终实现合并。 我们肯定会提供免费套餐,以及针对大型/私有项目的每月约 30 美元的套餐,未来还将提供可选的付费 AI 集成 / 自托管 / 企业功能 / 原生和移动版本。 我们的目标是构建一个基于 KiCad 的产品(协作、AI 集成、共享、集成),就像当年 Red Hat 对待 Linux 一样。我们正专注于使其功能完善,并计划在约一个月内推出第一个版本。 当然,我们站在 KiCad 和 wxWidgets 开发者的肩膀上,我们希望回馈并尽可能多地贡献。如果您有关于如何最好地做到这一点的想法,请告诉我。我曾发布过几个中等成功的开源项目,但我从未成为过贡献者。所有前端代码都是 GPL 许可(必须如此),如果您愿意,可以运行此项目。 您可以在以下位置找到源代码:https://github.com/emergence-engineering/pcbjam。 我们的公司网站是:https://emergence-engineering.com/ 我们的简陋落地页是:https://www.pcbjam.com/