Fedibirdで採用している、ローカルタイムラインを取り除くコードを独立させたものを用意しました。Mastodon v3.3.0用になっています。
変更内容はGithubの該当コミットを参照してください。 github.com
cherry-pickの仕方
git fetch https://github.com/fedibird/mastodon.git remove-local-timeline git cherry-pick 71584f2
あなたの作業環境またはサーバ上で、gitによりコミットを取得し、cherry-pickでパッチをあてます。
Fedibirdの全ソースコードは不要なので、Mastodon v3.3.0に、今回のローカルタイムライン削除用のコミットだけを含むremove-local-timelineブランチだけをfetchし、コミットID 71584f2 を指定してcherry-pickします。
効果
- ローカルタイムラインに関連するコードは取り除かれます
- メニューなどから、ローカルタイムラインの項目が削除されます
- APIでローカルタイムラインを取得しようとすると、空の内容を返します
- ハッシュタグをローカルのみで絞り込む機能も取り除かれます
Instance APIが、Fedibird拡張'timeline_no_local'を返す
ローカルタイムラインを無くす変更はFedibirdの拡張として広く認知されているため[要出典]、Instance APIで、Fedibirdと同じ値を返すことで、クライアントアプリなどが、ローカルタイムラインが無いサーバであることを認識してくれるかもしれません。
そこで、/api/v1/instance
の返すjsonに、下記の値が追加されるように変更しています。
"fedibird_capabilities": [ "timeline_no_local" ],