何かやってみるブログ

興味をもったこと、趣味のこと、技術について色々書きます。

[メモ] systemdで雑にgyazo apiを叩くスクリプトを動かす。

同僚がPull Requestに画像を貼り付けるのにGyazoを使っていて便利そうだなぁと思ってLinuxのクライアントをインストールして動かそうと思ったが僕の環境ではフリーズして動かなかった。 github.com

なので雑にスクリプトを作った。実装はシンプルで chokidarとかいうファイルを監視してくれるやつでwatchしているディレクトリにファイルが追加されたらGyazo APIを叩き、レスポンスで返ってきた画像urlをclipboardyというライブラリでクリップボードで書き込むという感じにした。

github.com

デスクトップでスクショを撮ると以下のようなURLがクリップボードに書き込まれる感じ

https://i.gyazo.com/698db1fa346bbf5065c7cb648a2ba0cf.png

https://i.gyazo.com/698db1fa346bbf5065c7cb648a2ba0cf.png

スクリプトはsystemdのファイルを作って動かしている。

#!/bin/bash
cd /home/t-sugiyama/screenshot_to_gyazo
/home/t-sugiyama/.anyenv/envs/nodenv/shims/node index.js
[Unit]
Description=Screenshot to gyazo
StartLimitBurst=10
StartLimitIntervalSec=60
[Service]
Restart=always
ExecStart=/home/t-sugiyama/start.sh
[Install]
WantedBy=default.target
systemctl --user daemon-reload
systemctl --user enable gyazo.service
systemctl --user start gyazo.service
systemctl --user statujs gyazo.service

追記(2024/2/13)

再起動したあとにxselがうまく動かないもんだいがあったのでwl-clipboardを使うようにしました。

github.com