Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

The Photo Frame I Didn't Have Time to Fix

说明与用途

Photoframe 项目因 Google Photos API 限制而失效,作者改用自托管的 Immich,添加了无 tvservice 的显示支持、内存和网络改进,构建了无 SSH 的 Pi 镜像,并实施严格的 AI 代理规则以确保稳定性。

问题

Google Photos Library API was cut, breaking the photoframe Raspberry Pi project that pulls random photos from Google Photos.

结果

Photoframe now reliably displays photos from Immich on multiple Raspberry Pi models, with improved stability, memory usage, and network resilience, and is released as a headless image that requires no SSH.

工作流

  • 1. Identify API limitation and choose Immich as replacement.
  • 2. Implement Immich authentication via API key and map albums to photoframe keywords.
  • 3. Add /immichconfig route while preserving existing routes per CLAUDE.md rule.
  • 4. Use AI agents (architect, developer, QA) with explicit rules to build and test changes.
  • 5. Apply automated release workflow with gates: push, tag, release only after Pi hardware testing.
  • 6. Build headless Lite image with pi-gen, CI builds under QEMU, and migration script.
  • 7. Deploy on Pi Zero W, Pi 3B+, Pi 4, Pi 5 with various display resolutions.
  • 8. Monitor and iterate on issues such as cached photos, KMS rotation, and Immich v3 API support.

证据

Google cut the Photos Library API down to photos an app uploaded itself, and a frame that reads your library has nothing left to read.

来源

I self-host Immich. My photos are already there. So the fix was obvious on paper: teach photoframe to talk to Immich.

来源

The push that went too far… created a v3.0.0 tag and release, created a dev branch, and forked the Raspberry Pi image builder.

来源

A pull request became the vetting gate for the release flow. A Pi Zero W with a 1366x768 laptop panel ran the full image before rc1 got tagged on April 18.

来源

Measured against the original project's master, the fork touches 65 files, with 4,563 lines added and 1,618 removed.

来源

  • 记录日期: 2026-10-03T05:56:12.012Z