xianpengshen
V2EX  ›  Apple

做了个 Mac 菜单栏备份 App, Keelhaven,开源免费

  •  
  •   xianpengshen · 2 days ago · 1141 views

    用 restic 好几年了,命令行那部分我一直很信任,不信任的是我自己:定时任务不知道 什么时候起就悄悄失败了,我是过了几周才发现的。

    所以做了 Keelhaven ,一个 macOS 菜单栏 App 。选文件夹、选目的地、设个频率,剩下的 它自己跑,失败了才出声。

    目的地是你自己的:外置硬盘、任何 S3 兼容的桶( B2 、R2 、Wasabi 、自建 MinIO 都行)、 或者 SFTP 到自己的 NAS 。没有账号系统,没有我的服务器,不发任何遥测——App 里根本 没有能往外发东西的地方。

    几个我觉得值得说的点:

    • 备份出来的就是标准 restic 仓库。任何一台机器上 restic snapshots 照样能读和恢复。
    • 密码和 S3 密钥存在 Mac 钥匙串里,一个计划一条。传给 restic 只走子进程环境变量,不进 argv ,不落盘,子进程拿到的是一个最小的干净环境而不是 App 自己的。
    • 每个仓库按计划跑 restic check(默认每周),计划那行会显示上次校验通过的时间。 备份怕的除了失败,还有失败了没提醒你。
    • 中英文双语,App 和官网都是。

    我目前还没有公证,还没申请 Apple 开发者账号(一是申请失败了,另外一年 99 刀暂时,还不打算为一个没有收入的项目掏这个钱),所以直接下 DMG 双击会被 Gatekeeper 拦一次。

    但两条脚本安装的路都不会弹:

    brew install --cask shenxianpeng/tap/keelhaven
    # 或
    curl -fsSL https://keelhaven.app/install.sh | bash
    

    最新的版本是 v0.5.0 ,公开出来一周不到。发出来主要是想找人用坏它。欢迎使用,随时反馈,有问必答。

    官网 https://keelhaven.app 源码 https://github.com/shenxianpeng/keelhaven

    2 replies    2026-09-03 13:46:55 +08:00
    Absofknglutely
        1
    Absofknglutely  
       1 day ago   ❤️ 1
    原来是备份文档, 看标题还以为是备份菜单栏...
    xianpengshen
        2
    xianpengshen  
    OP
       1 day ago via iPhone
    哈哈我想说的是“躺在菜单栏里的备份 App”…
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   906 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 21:09 · PVG 05:09 · LAX 14:09 · JFK 17:09
    ♥ Do have faith in what you're doing.