跳到正文
原文
Hacker News· ingve·· 3 小时前精选AI 评分47

CleanFrame 为 Samsung The Frame 提供简洁主屏幕

CleanFrame: A quieter home screen for Samsung The Frame

AI 导读

ingve 开源 CleanFrame,为运行 Tizen 的 Samsung The Frame 提供可定制的简洁主屏幕,支持应用启动、照片背景、12 小时时钟和遥控器导航。

推荐理由

CleanFrame 将浏览器预览、电视安装和原生启动修改分阶段处理,并提供受限的编码智能体任务模板与恢复步骤。

正文 · AI 翻译

为三星 The Frame 设计的更安静的主屏。你的应用、一张照片和当前时间,配合为遥控器量身打造的界面。

CleanFrame browser preview using the bundled Manrope font

我为了一台电视开发了 CleanFrame:我自己那台运行 Tizen 的三星 The Frame。我把代码和配置说明分享出来,供其他人以此为基础继续开发。

使用请自行承担风险。绝大部分工作都是为了让它在我这台电视上良好运行,几乎没有为可移植性投入精力。配置脚本反映的是我的电脑、电视和固件情况,因此你需要根据自身情况进行调整,并在自己的硬件上测试结果。

我强烈建议你 fork 此项目并在其上继续开发,理想情况下借助一个编程助手来帮助你理解和调整配置。先从浏览器预览开始,把界面改造成你喜欢的样式,准备好之后再处理电视安装。原生 Home/启动相关的修改需要格外小心;配置指南中涵盖了相关风险和恢复步骤。

体验界面

运行浏览器预览需要 Node.js 22+ 和 Python 3.10+。

git clone https://github.com/nthnclrk/CleanFrame.git
cd CleanFrame
npm ci
npm run dev:public

打开 localhost:4795/home/。使用方向键、Enter 和 Escape 键,或点击控件。应用启动和三星相关界面需要真实电视;选中它们时,预览会提示该限制。

公开版预览使用内置的 Manrope、Geist 和 Newsreader 字体。

可定制的内容

  • 可选择列表或 Dock 布局,显示图标、名称或两者皆有。
  • 使用照片、浅色或深色背景,搭配简明的 12 小时制时钟。
  • 通过同一个设置界面调整字体、焦点和玻璃材质。
  • 选择并重新排列主屏应用;自动发现电视上已安装的应用。
  • 从十五张壁纸中挑选,并将偏好保存在本地。

玻璃和模糊效果是提前渲染好的。电视加载渲染完成的图片,并通过变换和透明度来实现焦点反馈。

使用编程助手

在本地编程助手中打开本仓库,并给它一个有限范围的修改任务:

Read AGENTS.md, docs/development.md and docs/interaction-behaviour.md.
Help me adapt CleanFrame. Start with the public-font browser preview.
My first change is: <describe one change>.
Preserve remote navigation, saved preferences and the ES5 runtime.
Run the source checks and relevant browser checks. Show the result.
This task is browser-only: do not connect to a TV, sign or install a
package, or change Home/startup settings.

查看 working with an agent,了解电视配置的提示词,以及 UI 工作、应用安装和原生 Home 修改之间的区别。处理电视相关任务时,编程助手需要本地电脑的访问权限;仅靠阅读本仓库,在线对话式助手无法触达你的电视。

安装到电视上

参考这份分阶段的 三星 The Frame 配置指南,了解我在自己电视上使用的流程,并据此适配到你的电视上。内容涵盖遥控器的开发者模式操作顺序、官方三星工具、自有证书和应用标识、安装流程、外观检查以及恢复方法。

签名脚本和电视端脚本都是针对我的环境编写的。你的编程助手需要相应调整路径、签名配置、身份校验以及已安装应用的 ID,并与你一同验证每个阶段。安装应用和分配遥控器 Home 键是分开的两步。

领域 证据与局限
参考硬件 三星 QA55LS03DAWXXY / LS03D,固件 2130.0,Tizen 9.0,32 位 ARM
应用安装 在 0.6.1 及之前版本,签名安装与启动命令均执行成功。最新版本的渲染效果和遥控器手感仍有待现场实测。
应用启动与 Home 键 在参考设备上已确认 Netflix/YouTube 能够启动,并可从 Netflix 界面通过实体 Home 键返回。
仍未解决 从流媒体/艺术模式退出后的正常开机流程、修正后的 Smart Hub 退出操作以及原生艺术模式入口,都仍需通过现场验证确认。
其他电视 不保证兼容性。本项目为 Tizen 源码;Android TV、Google TV、LG webOS 和 Roku 均需要各自的实现。

详细的设备记录将观察到的结果与 SDK 响应分开。原生 Home/启动 使用未公开的、受保护的辅助函数;它是可选的,在固件更新后可能会失败。在尝试该操作前请保留恢复基线。即使没有它,应用也可以手动打开。

开发与检查

npm run check
npx playwright install chromium
CLEANFRAME_PUBLIC_FONTS=1 npm run check:browser
npm run check:public
npm run export:public

浏览器检查使用隔离的 Chromium 配置和回环预览。它们从不连接电视。公共导出会生成dist/CleanFrame-public-unsigned.wgt,包含公共字体和声明。安装前需要你自己的身份和签名。它不保证资源再分发权利或设备兼容性。

位置 用途
app/ 当前打包的 UI 和运行时资源
scripts/ 预览、验证、资源生成和参考电视工具
开发 / 测试 运行时映射、首选项、检查和设备边界
资源 / 第三方声明 渲染方案、字体分离和资源来源
资源来源 打包第三方资源的图片来源与核验
.local/, dist/ 忽略的私有设置、恢复数据、生成的文件和包

贡献

Fork 它,进行试验并构建适合你电视的内容。如果发现有用的修复或改进了设置说明,欢迎贡献。在进行较大改动前请阅读CONTRIBUTING.md。报告应包含型号、固件版本和观察到的结果,并移除私有标识信息。

许可证与致谢

CleanFrame 的原始代码和文档使用MIT 许可证。字体、照片和徽标保留各自的使用条款;请阅读THIRD_PARTY_NOTICES.md。付费的 Pangram 二进制文件不包含在 Git 与公共导出中。本地包可能包含它们,因此请将个人构建与公共下载分开存放。

发布审查记录了发布前的检查。第三方资源保留其声明中列出的条款。CleanFrame 是一个独立项目,与三星或流媒体服务无关。

TV Detox 是在让代理辅助的电视项目变得更易上手方面的一个有用示例。其 Android 设置采用不同的实现方式;这里的提示和说明专为 CleanFrame 与 Tizen 编写。

来源:Hacker News · github.com