最近開始想要記錄自己寫程式或文章的時間,所以我從網路搜尋到 WakaTime 這個服務,只要註冊他們的帳號、在編輯器安裝對應的外掛程式,在你使用編輯器的時候,外掛程式就會自動上傳資訊,讓你可以看看自己對編輯器的使用情況,例如本週在某個專案花了多少時間之類的。
可是我覺得這種記錄根本不需要上傳到雲端平台,而且還要付費才能看到比較久的記錄。所以我又找到可以自己架設,又與 WakaTime API 相容的後端:Wakapi。Wakapi 跟 WakaTime 的關係就像 Vaultwarden 跟 Bitwarden 一樣,非官方做出了與官方前端相容的後端替代品,讓大家可以自己架設。
Wakapi 可以把資料留在自己手上這點很不錯,不過要架在伺服器上還是有點麻煩。我覺得既然我只在一台電腦上記錄,這些資料也不會分享給別人,後端只要放在本地就好了,不需要另外找伺服器架 Wakapi 吧。
後來我突然想到,Wakapi 是用 Go 寫成的,通常 Go 寫成的軟體比較會提供 Linux 套件給別人安裝,會不會 Wakapi 也有?查了一下 AUR 還真的有,所以我就高興的安裝了。
安裝
因為我已經有裝過 yay
了,所以安裝方式就只是簡單的 yay -S wakapi-bin
。有安裝 Arch Linux 但沒裝過 AUR 套件的人可能要看文件得知如何安裝 AUR 套件。
安裝好之後下一個問題是設定檔在哪裡?查了一下 PKGBUILD
發現設定檔放在 /etc/wakapi/config.yml
。
設定檔裡記載存放資料的資料庫位置就是在根目錄,可能把 db.name
預設值改掉會比較好。
另外這個套件還貼心的提供了 wakapi.service
,如果想要開機時啟動 Wakapi,可以啟用這個服務:
sudo systemctl enable wakapi.service
或者加上 --now
flag 就可以馬上啟用服務。
接著只要打開這個網址就能使用 Wakapi:
http://localhost:3000
註冊完之後,你會看到 API Key,先把它記起來。
設定外掛程式
這邊以 VS Code 為例。安裝完 VS Code 的 WakaTime 延伸模組後,按 F1,先輸入 WakaTime API URL
,按 Enter 後輸入上面的網址,再按 Enter 確認。
接著設定 API Key,按 F1,先輸入 WakaTime API Key
,按 Enter 後輸入剛剛記起來的 API Key,再按 Enter 確認。
這樣就設定完成了,可以在 VS Code 做點什麼事,看記錄有沒有正確上傳到本地的 Wakapi。