技术

在写一个 read-it-later 服务,起名叫 Stash,快写完了。想写这个的原因是我尝试架设了几个似乎比较著名的这类服务,都失败了。我不知道为什么这样一个简单的服务还需要搞这么复杂。比如最常见的是 Wallabag,我尝试了直接在 VM 上装,自己写 Dockerfile,用官方 Dockerfile,都失败了,什么垃圾玩意⋯⋯后来看到另一个好像也很流行的服务叫 Readflow,是 Go 写的,我想着 Go 好啊,起码 binary 没依赖,how hard could it be???? 官方提供了两种安装方法:

go get -v github.com/ncarlier/readflow

curl -sf https://gobinaries.com/ncarlier/readflow | sh

两种方法都不行!Go get 运行以后没有 binary,脚本运行直接出错。我都惊了⋯⋯这么个屁大点事很难么?有这时间我还不如自己写。

重新架了一下 Dendrite server,但是这次好像比之前错误更多了⋯⋯

  • 第二个客户端无法登录,一直转圈 sync

  • 收不到图片

  • 有些群加入的时候看不到历史

  • 各种其他乱七八糟的错误

试了一下 ArchiveBox,感觉这个其实比网摘好用。目前有一些简单的想法写一个网页 archive 程序,就只需要支持 wget 下载,每个网页打成一个 tar 包,看的时候解压到 /tmp 里看就好了。比较棘手的问题是如何做 category、tag 和账户。

把一些架设服务和维护服务器的写成 Ansible playbook 扔到 GitHub 上了。这样就不用给每个过程都写笔记了,以后需要重新设置的时候跑一下 playbook 就好。

按照上周的计划,把 DDNS 迁到了 VPS 上,把 Let’s Encrypt 证书改成了 wildcard,这样就不用可怜兮兮地每个服务分配一个端口了⋯⋯我设置完这个以后发现其实有一种 DNS record 叫 SRV,可以带端口⋯⋯顺便装了个 feed 阅读器。装这个的原因是我以为这是个 read-it-later 程序,想试一下⋯⋯

下周计划

  • 完成 Stash,架到服务器上

  • 写一篇关于学术软件的 blog

  • 换到 Conduit Matrix 服务器,感觉这个好架很多

  • GPG 密钥该续期了~~