TTY TwitterクライアントのTTYtterからOysttyerに乗り換え

TTYtterというPerl製でcliで動作するTwitter clientがあります．自作Twitter投稿scriptがアカウントをBANされてAPI keyが使えなくなった後これを使って自動投稿などをしていたのですが，Debian busterから無くなっています．
開発元を見るとOysttyerというものが変わりに存在するようなのでそちらに乗り換えました．

TTYtter is dead: Oysttyer is now the interactive console text-based command-line Twitter client and Perl platform (whew!)

oysttyer/oysttyer: An interactive console text-based command-line Twitter client written in Perl

Debian — パッケージ検索結果 — ttytter

Debian — パッケージ検索結果 — oysttyer

TTYtterからOysttyerに乗り換えるには認証鍵などを作り直す必要があるようです．
-oauthwizard オプションで認証ができるようです．
既定値では認証情報は ~/.oysttyerkey に保存されますが，複数のTwitterアカウントで利用したいので -key=認証情報格納ファイル オプションを付けて区別します．

Note

-keyf のパスに ~ を使うとエラーになるようです．今回は代わりに $HOME を使いました．

$ oysttyer -keyf=$HOME/.oysttyerkey_kagolug_ml -oauthwizard (1)
-- using SSL for default URLs.
trying to find cURL ... /usr/bin/curl
-- Streaming API disabled (no -dostream) (oysttyer will use REST API only)
-- no version check performed (use /vcheck, or -vcheck to check on startup)

+------------------------------------------------------------------------------+
|| WELCOME TO oysttyer: Authorize oysttyer by signing into Twitter with OAuth ||
+------------------------------------------------------------------------------+
Looks like you're starting oysttyer for the first time, and/or creating a
keyfile. Welcome to the most user-hostile, highly obfuscated, spaghetti code
infested and obscenely obscure Twitter client that's out there. You'll love it.

oysttyer generates a keyfile that contains credentials for you, including your
access tokens. This needs to be done JUST ONCE. You can take this keyfile with
you to other systems. If you revoke oysttyer's access, you must remove the
keyfile and start again with a new token. You need to do this once per account
you use with oysttyer; only one account token can be stored per keyfile. If you
have multiple accounts, use -keyf=... to specify different keyfiles. KEEP THESE
FILES SECRET.

** This wizard will overwrite ~/.oysttyerkey_kagolug_ml
Press RETURN/ENTER to continue or CTRL-C NOW! to abort.
(2)
Request from https://api.twitter.com/oauth/request_token ... SUCCEEDED!

1. Visit, in your browser, ALL ON ONE LINE,

https://api.twitter.com/oauth/authorize?oauth_token=lfqqTgAAAAAAixnPABABd7YG56I (3)

2. If you are not already signed in, fill in your username and password.

3. Verify that oysttyer is the requesting application, and that its permissions
are as you expect (read your timeline, see who you follow and follow new
people, update your profile, post tweets on your behalf and access your
direct messages). IF THIS IS NOT CORRECT, PRESS CTRL-C NOW!

4. Click Authorize app.

5. A PIN will appear. Enter it below.

Enter PIN> 0901765 (4)

Request from https://api.twitter.com/oauth/access_token ... SUCCEEDED!
Written keyfile /home/mk/.oysttyerkey_kagolug_ml

Now, restart oysttyer to use this keyfile.
(To choose between multiple keyfiles other than the default .oysttyerkey,
tell oysttyer where the key is using -keyf=... .)

認証ファイルを指定して認証処理実行

Enterで続行

URLをコピーしてウェブブラウザにて認証したいTwitterアカウントで許可する

ウェブブラウザに表示されるPINを入力してEnter

これで認証情報が指定ファイルに格納されます．

TTYtterではScript中から以下のようにして投稿を行っていました．

ttytter -keyf=/home/mk/.ttytterkey-kagolug_ml -location -lat=31.5775639 -long=130.6667937 -status="$MESSAGE"

Oysttyerのユーザガイドのコマンドラインオプションを確認するとそのまま使えそうです．

oysttyer.github.io/docs/userGuide.html

コマンドと認証鍵ファイルを変更するだけで動作しました．

$ oysttyer -keyf=/home/mk/.oysttyerkey_kagolug_ml -location -lat=31.5775639 -long=130.6667937 -status="投稿テスト📮"
-- using SSL for default URLs.
trying to find cURL ... /usr/bin/curl
test-login SUCCEEDED!
post attempt -- using lat/long: (31.5775639, 130.6667937)
SUCCEEDED!

Scriptも同様にコマンドと鍵ファイルを書き換えました．これでbuster以降でも大丈夫なはずです :)

環境

$ dpkg-query -W oysttyer chromium
chromium 88.0.4324.146-1~deb10u1
oysttyer 2.10.0-1