tsutsuiの作業記録置き場

NetBSDとかPC-6001とかの作業記録のうち、Twitterの140字では収まらない内容や記事としてまとめるべき内容をとりあえず置いてみる予定

mikutter GTK3対応(2) 〜サーベイ中〜

日経mikutter

前回の mikutter GTK3対応(1) のエントリとはあまり関係なく、日経Linux 2022年 1月号の付録冊子「あなただけの定番に!Ubuntuフリーソフト100+」において、 mikutter が「ファンの多い Mastodonクライアント」として紹介されました。

info.nikkeibp.co.jp

日経Linuxといえば、2013年12月の 2014年1月号でも「人気の Twitterクライアント」として取り上げていただいたことがあります。

togetter.com

日経Linuxの中の人に mikutterファンの方がいるからというわけではないのでしょうが、これまでにも4回以上 mikutterを取り上げていただいています。なお過去には Software Design誌でも mikutterが紹介されたことがあります

偶然とはいえ、 GTK3対応で大きく変わろうとしているこのタイミングで mikutterを紹介していただけたので、紹介誌は買って応援、 mikutter本体はブログ記事の続きでサポート、という具合いに相乗効果を出していければと思います。(いわゆるダイレクトマーケティング

Kindle版・Kobo版もあります

www.amazon.co.jpbooks.rakuten.co.jp

UbuntuTwitterクライアントmikutterを使う」

日経Linuxにおいて ubuntu用ソフトウェアとして mikutterが紹介されたこととは直接関係があるかはわかりませんが、つい先日の 12月10日に moerrariさんによる「UbuntuでTwitterクライアントmikutterを使う」という記事が投稿されています。

moerrari.hatenablog.com

前回の mikutter GTK3対応(1) のエントリ についても「貴重なmikutterの最新情報」として言及いただいている上に、一番の難関である Twitter CK/CS取得の詳細、mikutterを使ってみた上での問題点の指摘等々もいただいていて、「新たに mikutterを使う」という観点では非常に有用な記述になっていると思います。

さっそくですが、「リツイート(シェア)の背景色の設定が重複している問題」についてはチケット入れました。また、前回のエントリで適当な言及で済ませてしまった Twitterプラグインの GTK2版対応についてもちゃんと対応したいと思います。とりあえず "mikutter4" のブランチを切ってスクリプトで git clone 元を切り替える方向で調整中

「タイムラインの一番下で過去を遡ってツイートを取得する」という「使い方の提案」については、実はその内容に対応するチケットが長期間放置状態になってしまっているので、こちらもぼちぼち取り上げてみたいと思います。

dev.mikutter.hachune.net

mikutter GTK3対応の歴史 〜プロローグ〜

「日経Linuxubuntuも mikutterの GTK3対応とは関係ないじゃん!」と思われた方もいるかもしれませんが、今回の一連の記事を書くきっかけとなった最近の mikutter GTK3対応のアクティビティは、 ubuntuの mikutterパッケージの元となっている debianにおける mikutter対応とちょっとだけ関係していたりします。

そういった小ネタを含め、 mikutterの GTK3対応について1ユーザーとして横から観測できている範囲で本題である mikutter の GTK3対応の歴史と道のりをつらつら書いてみようと思います。

……と思って mikutter GTK3対応の始まりである Redmineチケット#887と関連コミットの調査サーベイをしていたのですが、サーベイ中の12月12日午後に追い越される形で toshi_a さんから「mikutter 5.0の新機能」のエントリが発表されてしまいました。

mikutter.hatenablog.com

このままこのエントリを書く意味あるのかというところもありますが、 toshi_aさんが以下のようにさらっと 3行で書かれているGTK3対応の各ポイントについて、もう少し突っ込んだ内容まで書ければいいかなと思っています。

今回のメインですが、新しくできるようになったことは特にありません。未実装項目や既知のバグが多数あります。

更に、サードパーティープラグインの互換性も一部失われています。これは気合で直すしかなく、mikutterの歴史の中で最も非互換なアップデートです。

もはやGtk2はサポートされていないので、できるだけ早く対応する必要がありました。

1つ目の「未実装項目や既知のバグが多数あります」については、背景となる GTK2からGTK3への移行の苦労を書き出すといくらエントリを書いても足りないというのが正直なところです。

一例として、 mikutterのGTK3対応関連のコミットを一通り確認したところ、今年9月以降の個別チケットがあるものを除いても 150を超えるコミットがありました。今回、サーベイのついでで該当するコミットをすべてRedmineチケットに関連付けして一覧として確認できるようにしたので、興味のある方はざっと眺めてみてください。

dev.mikutter.hachune.net

これらコミットのログと差分を見るだけでも GTK3対応の工数を察せられるのではないかと思います。

2つ目のプラグインのGTK2対応については、私自身も Twitter関連プラグインの修正でかなりの試行錯誤を強いられました。

次回以降は、このあたりの歴史や実際の修正作業について背景の解説(多分に推測を含む)を含めて書いてみたいと思います。