给软件开发者准备的优质简报,每日阅读 10分钟


Apple Just Lost Me

460 pointsLinkComment(448)Share

一位资深苹果用户因三大核心问题决意转向Linux与Android

  • 作者是一位拥有25年苹果使用史、从MacOS 8时代开始的资深用户,因一系列“千刀万剐”式的问题,决定将个人计算设备全面迁移至Linux和Android。
  • 首要原因是强烈反对苹果的“守门人”机制,认为即使作为付费开发者合规打包并公证软件,系统仍对用户显示额外确认弹窗,这是对非应用商店开发者的惩罚性障碍。
  • 其次,macOS 26的“液态玻璃”设计被斥为彻底的失败,不仅外观丑陋,更导致界面控件重叠、显示不全等严重功能问题,破坏了作者的工作流。
  • 压垮骆驼的最后一根稻草是苹果的年龄验证机制:为遵守英国法律,其仅通过信用卡验证年龄,导致作者(45岁)的五张卡(含一张外国信用卡)均验证失败,账户功能被锁,而苹果未提供任何替代验证方式。
  • 作为具体行动,作者已购买MNT Pocket Reform笔记本电脑,并计划购买Fairphone Gen 6手机,同时考虑组建一个基于Linux的“家庭实验室”以实现照片备份和共享存储,旨在重新掌控自己的计算设备与数据。

Running Tesla Model 3's computer on my desk using parts from crashed cars

817 pointsLinkComment(285)Share

利用事故车零件在桌面上运行特斯拉 Model 3 车载电脑

  • 作者为参与特斯拉漏洞赏金计划,从 eBay 上以 200-300 美元的价格购得事故车拆解的特斯拉 Model 3 车载电脑,该电脑由水冷金属外壳包裹的媒体控制单元和自动驾驶电脑堆叠而成。
  • 通过查阅特斯拉官方公开的电气参考图,确定了为电脑供电的特定连接器与引脚,并成功使用 12V 可调直流电源(峰值功耗达 8A)启动了电脑硬件。
  • 将电脑接入车载内部网络(192.168.90.0/24)后,发现了 MCU 上运行的 SSH 服务器(仅允许车辆“停放”时连接,且需要特斯拉签名的密钥)以及用于特斯拉诊断工具 Toolbox 的 ODIN REST API 服务。
  • 连接屏幕所需的专用罗森伯格电缆无法单独购买,尝试使用外观相似的宝马 LVDS 电缆替代失败,在手工接线时因导线碎屑导致短路,烧毁了关键的降压控制器芯片(MAX16932CATIS/V+T)。
  • 最终不得不花费 80 美元购买整个庞大的仪表盘线束总成,才获得所需的连接电缆,从而成功在桌面上启动了完整的车载操作系统与可操作的触摸屏。

Moving from GitHub to Codeberg, for lazy people

425 pointsLinkComment(217)Share

从 GitHub 迁移到 Codeberg 的懒人实用指南

  • 仓库内容迁移简便:Codeberg 提供的一键导入功能能完整迁移议题、拉取请求和发布版本,完美保留编号、标签和作者信息,其用户界面与 GitHub 几乎相同,体验远超其他迁移方案。
  • 静态网站托管有替代方案:可以使用 codeberg.page 替代 GitHub Pages,操作方式类似(推送 HTML 到特定分支),作者未遇到停机,但需注意其不提供正常运行时间保证。
  • 持续集成是主要挑战:迁移需放弃 GitHub 为公开仓库提供的免费 macOS 运行器和无限容量,解决方案包括为编程语言进行交叉编译,或自托管 Forgejo Actions 的运行器。
  • 推荐使用 Forgejo Actions:尽管 Woodpecker CI 在 Codeberg 上更稳定,但 Forgejo Actions 的界面和 YAML 语法与 GitHub Actions 高度相似,现有 Actions 生态大部分可直接复用,仅需更改引用源。
  • 处理旧 GitHub 仓库:作者建议更新 README 并归档旧仓库;若设置 Codeberg 向 GitHub 推送提交,用户仍可在原处提交 PR 和评论,而彻底禁用议题会破坏所有现有链接。

Personal Encyclopedias

738 pointsLinkComment(147)Share

从整理家族照片到构建个人百科全书:whoami.wiki的诞生

  • 作者在整理祖母的1351张实体老照片时,通过与祖母访谈记录口述历史,并首次尝试使用维基百科的底层软件MediaWiki进行编辑,将照片与故事结构化地记录下来,深刻体会到百科全书软件在保存易逝记忆方面的强大能力。
  • 项目随后扩展到数字资料,利用AI模型(如Claude Code)分析仅带时间戳的数字照片,模型仅凭视觉内容就能自动生成详细的旅行维基页面草案,识别地点、交通方式,并在作者澄清人物身份后自动编写包含人物的图注。
  • 通过整合更丰富的个人数据源(如银行交易记录、Uber行程、谷歌位置时间线和Shazam历史),AI能够交叉引用信息,自动推断出就餐的餐厅、精确的出行地点,甚至通过票务发票识别照片中足球比赛的对阵球队等复杂背景。
  • 该工具进一步应用于分析长达十年的社交媒体和通讯存档(包含约10万条信息和数千条语音备忘录),AI能够追溯友谊的发展脉络,将零散对话编织成连贯的、如同熟人撰写的个人生活叙事页面。
  • 这一系列实践让作者意识到,他所构建的是一个个人百科全书——一个利用既有数据编译而成的、结构化、可浏览且相互关联的个人生命全记录,其页面格式与维基百科公共条目一致。
  • 最终发布的whoami.wiki是一个开源项目,基于MediaWiki构建,允许用户在本地机器上运行以完全掌控数据,并利用任何AI模型协助创建和编辑页面,其核心价值在于帮助用户重新发现并珍视人际关系中被遗忘的珍贵细节。

My minute-by-minute response to the LiteLLM malware attack

196 pointsLinkComment(91)Share

AI 辅助检测并应对 PyPI 供应链攻击实录

  • 作者因笔记本电脑被大量异常 python -c 进程拖垮而展开调查,最初错误归因于开发工具故障,但 AI 助手通过分析系统日志和包缓存,最终识别出根本原因。
  • 调查发现,问题的根源是 PyPI 上的 litellm 1.82.8 版本被恶意植入了一个 .pth 文件,该文件会在每次 Python 进程启动时自动执行,从而窃取 SSH 密钥、云凭证、数据库密码等大量敏感数据。
  • 恶意脚本试图将加密后的数据外传至攻击者控制的域名 models.litellm.cloud,并计划在本地安装持久化后门以及横向扩散到 Kubernetes 集群,但系统因恶意脚本触发的进程“fork 炸弹”而崩溃,意外中断了部分攻击。
  • 作者确认此恶意版本是攻击者直接上传至 PyPI 的,GitHub 仓库中并无对应版本,且当时尚无公开报告,这意味着作者很可能是首批发现者。
  • 在确认攻击后,作者迅速在隔离环境中复现了问题,随即撰写博客文章公开披露详情,并向 PyPI 安全团队及 litellm 项目维护者报告,以促使受感染软件包被下架。

Colibri – chat platform built on the AT Protocol for communities big and small

72 pointsLinkComment(28)Share

基于AT协议构建的真正数据自有的聊天平台

  • Colibri 是一个基于 AT 协议构建的开源聊天平台,旨在服务于不同规模的社群。
  • 用户数据不存储在平台服务器上,而是存储在托管其 AT 协议身份的个人数据服务器中,实现了真正的数据所有权和可移植性。
  • 平台提供实时聊天、语音/视频通话和论坛讨论等功能,并配备了便捷的版主工具,如屏蔽消息、踢出成员及阻止其再次加入。
  • 其用户界面设计灵感来源于 Discord、Teams 和 Slack 等流行应用,力求现代、简洁且让用户感到熟悉。
  • 用户可以直接使用现有的 Bluesky 账户登录,也完全支持使用自托管的个人数据服务器账户。
← 2026-03-25 2026-03-26 ...