ツイッターからPleromaに移住する方法

界隈で言うところの、鳥を捨てて神の連合に移住する方法。フレンズを維持したまま、異常者は置き去りにする。

広告

もしあなたがPleromaを知らないなら、マストドン日本語ウィキの記事新しい連合型SNS「Pleroma」はMastodonを置き換える?Mastodonに続く新たな連合型SNS「Pleroma」作者に聞く開発の背景、特徴、ロードマップを読むとよい。簡単に言うと、Pleromaは脱中央集権なソーシャルネットワークで、自由ソフトウェア信者によって開発されており、ツイッターによく似ているが、さらに価値が追加されている。

もしあなたがまだツイッターを使っているなら、Pleromaに移住する理由は以下のものが考えられる。

  • Pleromaは友好的、会話的で新鮮。初期のツイッターに似ている。
  • ユーザーが最初に置かれている。Pleromaのアーキテクチャは完全にハラスメントとイジメに対する防御のために設計されている。
  • ナチスがいない。(ナナチはたくさんいる。)
  • 企業の利益のために運営されていない。あなたのデータを収穫し第三者に売る中央権威が存在しない。
  • 中毒性のあるテクノロジーではない。ログインと投稿を促すメールリマインダーを送らないし、あなたの個人的な詳細を手放すこともない。
  • 脱中央集権でオープンサースなソフトウェアがコミュニティにより開発されている。政府または邪悪な集団が、禁止したり検閲したりすることが難しい。

もしあなたがすでにPleromaのアカウントを持っているなら (もしまだならPleroma公式サイトPleromaインスタンス一覧が助けになるかもしれない)、移住を助ける以下のようなトリックがある。

ツイッターから

  1. あなたのツイッターのフレンズのうちマストドンに移住している者を探し、フォローする。Pleromaのユーザーはマストドンのユーザーをリモートフォローできるからである。残念ながら、ツイッターからPleromaに移住した人を探すウェブサイトはまだないので、かわりにツイッターからマストドンに移住した人を探すウェブサイトを利用する。同じことを3ヶ月から6ヶ月くらいの周期で繰り返すとよい。すべての卒鳥が2017年4月に行われたとは限らない。まさに今日、移住した人もいるかもしれない。それを探してPleromaからリモートフォローしよう。
  2. Pleromaに移住したことを知らせるアナウンスと、PleromaのプロフィールページのURLをツイートする。私は鳥のアカウントを消してしまったので例を示すことができない。
  3. 移住を通知するツイートをプロフィールに固定する。これにより、ツイッター側のプロフィールページを見る人に移住を知らせることができる。
  4. ツイッターはスクリーンネームの文字数が多くなったので、ツイッターでのスクリーンネームの末尾にPleromaのハンドルネームを含めることができる。これはツイートのたびにメッセージを広めることができる。Pleromaのハンドルネームは @your-username@the-instance-where-ist-located のような形式である。私の例は @vaginaplant@3.distsn.org である。メールアドレスに似ているが、最初に @ がある。ところで、このアドレスにメールを送らないこと。送っても届かないぞ。
  5. あなたがまだツイッターにいるなら、Pleromaのツイッターアカウントは知られていないので、マストドンの公式アカウントをフォローするとよい。マストドン公式ツイッターアカウントは移住を決断したことを継続的に思い出させてくれるし、リツイートするに値する話を提供してくれる。

移住するとき

あなたがスマートフォンでツイートしているなら、Pleromaはさまざまな方法でそれを代替する。Pleromaのスマートフォン用クライアントは知られていないが、マストドンのクライアントはおおむねPleromaのインスタンスに接続できる。Pleromaで動作確認されたスマートフォン用クライアントの一覧 が提供されている。ただし、それよりも、スマートフォンのブラウザでウェブUIを使うほうがよい。近年ではスマートフォンのブラウザも優秀なので、いつまでもアプリにこだわる必要はない。それはそうと、こんな話もある:

  1. ツイッターの公式アプリをアンインストールしよう。あいつは悪い。あなたの位置を追跡するし、ツイートを時間順に配列してくれないし、あなたがスマートフォンでやることをすべて捕捉しようと試みている
  2. かわりに……マストドン用のスマートフォンアプリで、Pleromaでの利用に適したものがあれば教えてほしい。

Pleromaへ

Pleromaを、あなたが入学した大学か、あなたが引っ越してきた都市であると想像してほしい。あなたはPleromaがどのように動作するか知っているとする。ここにはあなたにとってなじみ深いものもあるし、よく知らないものもある。ここにはあなたの新しい友になる人がたくさんいるが、あなたがすでに知っている人はわずかである。いずれにせよ、引っ越しのたびに、ほんの少しの努力が必要である。

Pleromaではツイッターよりも少しだけ困難がある。けれども、必要なことは、自分自身であることである。それぞれのソーシャルネットワークには雰囲気に違いがある。Pleromaがいくらツイッターに似ているとしても。その違いを見つけようと意識するとよい。これは、あなたが引っ越してきた通りの角に喫茶店を見つけたときに似ている。混んでいるだろうか? もっともよい注文は何だろうか? なぜ人々は電話をするとき外に出るのだろうか?

ここに、あなたが興味を持つかもしれない少数のアカウントを挙げる。

もちろんもっとたくさん (マストドンとPleromaを合わせれば17,000くらい)。連合タイムラインまたはローカルタイムラインに飛び込めば、とてもたくさんの投稿が多様な言語でなされていることを見るだろう。特にアカウントを作った直後は連合タイムラインまたはローカルタイムラインを見るべきだ。それによりここがどういう所かが分かる。そして、これは基本的にPleromaでしかできないことだ。次は新しい人々をフォローしよう。思ったほどおもしろくなければアンフォローするのもよい。誰も怒られない。ここは新しい土地だ。好奇心になろう。

沈黙しないようにしよう。ここはソーシャルネットワークである。もしあなたが何も持ち込まないならば、本当におもしろいものはない。ソーシャルネットワークツールはデフォルトでは空である。他人と話そう。ここは、ありあわせ料理、持ち寄りのパーティー、共有ランチである。すべての人が何かしらをテーブルに持ってくる。

ツイッターからPleromaに投稿をシェアする

あなたはツイッターで見た良い物をPleromaにシェアしようと思うかもしれない。これは良いことだ。これを正しく行うために、あなたのコピーの先頭に “RT @username@twitter.com” を付けよう。これはオリジナルの著者をクレジットするためである。ところで、これは最初期のツイッターで行われていたことである。

読者にとって攻撃的かもしれない投稿はContent Warningするとよい。マストドンにはある。Pleromaだと話がややこしく、Pleromaの独自UIはContent Warningを扱えないが、Pleromaのバックエンドとマストドンのフロントエンドという不気味な組み合わせだとContent Warningが可能である。

マストドンの人々は観客を尊敬する傾向にある。暴力、政治的な意見、ツイッター (鳥) に関することはContent Warningに隠すことが好まれる。Pleromaはマストドンに対する反動で不謹慎を好む文化があるが、それにも限界はある。

あと、チンコツイツイマストドンスペースを使うのは絶対にやめよう。鳥を燃やされても知らんぞ。

Pleromaからツイッターに投稿をシェアする

移住の動機によっては、Pleromaでの行動を共有することによって、ツイッターのフォロワーとの接触を維持したいかもしれない。私はそれを行っていない。なにしろ鳥のアカウントをスナネコしてしまったし、もしそうでないとしても、Pleromaのアカウントをフォローしてもらうほうがよい。Pleromaはともかく、マストドンであればMastodon Twitter Posterという手がある。

結論

ツイッターは悪くなる一方ではあるが、かつては楽しく有望であったとあなたが感じているならば。より敬意ある文化のマイクロブログ、コミュニティの決定により運営されるプラットフォーム、中央集権なサイロでないSNSが可能であると信じるならば。新しい旅を始める時は今である。

さいわいなことに、私はこの記事で、移住を容易にするための複数のツールを紹介することができた。あなたの目的が、ツイッターのアカウントを完全に削除することであるとしても、あるいは、ツイッターが燃え尽きて灰になるまで両方のアカウントを維持することであるとしても。

いずれにせよ、未来は明るく、Pleromaの成長は早く、ソーシャルメディアの未来に対するインパクトを私たちは正確に見積もることができない。(PeerTubeとActivityPubのような新しい話題もある。)

この記事があなたを助けた、もしくは、この記事に間違いがあると感じたら、私に知らせてほしい。そして、「ちょうど羽田に着陸しました」と言うことを恥ずかしがらないでほしい。

謝辞

本稿はJulien Deswaef, How to transition from Twitter to Mastodonの日本語訳である。CC BY-SAが適用される。

Pleromaインスタンス一覧を作った

概要

Pleromaインスタンス一覧

背景

マストドンのインスタンス一覧が乱立しているのに対して、Pleromaのインスタンス一覧はほとんど知られていない。Pleroma公式ウェブサイトに掲載されているインスタンスは実質2件 (他にフロントエンドのみPleromaのインスタンスが1件) である。マストポータルはインスタンスを登録するときGNU social、マストドン、Pleromaから実装を選択できるが、Pleromaのインスタンスのみを検索する方法が見当たらない。マストドン日本語ウィキのPleromaの記事には7件のインスタンスが記載されている。

提案手法

そこで、Pleromaのインスタンスの一覧を自動的に生成する方法を提案する。すでに、Peers APIを用いてインスタンス一覧を自動的に生成する手法が知られている。このインスタンス一覧にはマストドンとPleromaのインスタンスが含まれるため、Pleromaのインスタンスのみを抽出して表示すればよい。

インスタンスがPleromaであるかどうかを判断するために /api/pleroma/emoji を用いる。Pleromaのみに存在するAPIのうち、GETメソッドかつ認証不要でアクセスできることから、このAPIを選択した。このAPIにアクセスしたときJSONを返すインスタンスはPleromaであると判断する。稀に、すべてのパスに対してHTML形式のメッセージを返すウェブサイトが存在する () ので、これを避けるため、応答がJSON形式であることを確認する必要がある。

実際にPleromaのインスタンス一覧 (API) を作成したところ、20件のインスタンスを収集することが出来た。

制限

今回の実装では、掲載されるインスタンスはPeers APIを提供しているものに限られる。これは、2018年1月15日以降にdevelopブランチのコードを取り入れていることが必要である。

感想

APIを提供しないインスタンス一覧は何をやってもだめ。

マストドンインスタンス一覧を自動で作る

概要

マストドン2.1.1より /api/v1/instance/peers が導入された。これを使えば、誰でも簡単にインスタンス一覧を作ることができる。

背景

日本語圏のマストドンではインスタンスの一覧が乱立していることが知られている。このうち、インスタンスの登録が自動化されているものはinstances.socialマストポータルがある。また、自前ではインスタンスの登録を受け付けず、instances.socialのAPIを利用しているインスタンス一覧もある。

一方、インスタンスの登録にウェブサイト管理者の承認が必要であったり、ウェブサイト管理者が自分でインスタンスを収集していたりする場合には、ウェブサイト管理者の負担が大きいという問題がある。さらに、ウェブサイト管理者がインスタンスの登録の申請に応答しなくなり、インスタンス一覧の更新が途絶えている例も少なくない。有力なインスタンス一覧の更新が途絶えた場合には、古参のインスタンスに有利であり、新興のインスタンスには不利な状況になる。

ところで、マストドン2.1.1より /api/v1/instance/peers が提供されるようになった。これは、あるインスタンスに接続されている別のインスタンスのリストを提供するAPIである。Pleromaではstats-daemonブランチでPeers APIの開発が行われており、2018年1月15日にdevelopブランチにマージされた。すでにこのAPIを運用しているPleromaインスタンスには pleroma.distsn.org がある。

このAPIを再帰的に探索することにより、誰でもインスタンス一覧を作ることができる。このインスタンス一覧はインスタンスの登録が不要で、自動的にインスタンスを収集することができる。収録されるインスタンスの数と、新しいインスタンスを捕捉する早さは、既存のインスタンス一覧を簡単に凌駕する。

インスタンス一覧の作成

そこで、この節では、Peers APIを再帰的に探索することにより、自動的にインスタンス一覧を生成する方法を解説する。ソースコードは github.com/distsn/instances にある。重要なことは、深さ優先探索ではなく幅優先探索を用いることである。幅優先探索なので、先入れ先出しのキューを用いる。

準備

原初インスタンスのリストを用意する。私の実装では、以下のインスタンスを原初インスタンスとしている。これらのインスタンスのなかにはPeers APIを提供していないものもあるが、これは、将来のバージョンアップに期待してのことである。

  • mastodon.social
  • mastodon.cloud
  • pawoo.net
  • mstdn.jp
  • friends.nico
  • mstdn.kemono-friends.info
  • mstdn.maud.io
  • mastodon.juggler.jp
  • pleroma.soykaf.com
  • pleroma.knzk.me
  • ketsuben.red
  • plrm.ht164.jp
  • pleroma.vocalodon.net
  • plero.ma
  • pleroma.taketodon.com

反復

インスタンスの収集のため、以下の動作を繰り返す。

  1. 原初インスタンスのうち、キューに登録されていないものがあれば、キューの入口に追加する。
  2. キューの出口からインスタンスを1個取り出す。
  3. 取り出されたインスタンスの /api/v1/instance/peers を取得する。
  4. /api/v1/instance/peers のアクセスに失敗した場合は、手順1に戻る。
  5. /api/v1/instance/peers で得られたインスタンスを、すでにキューに登録されているものを除いて、キューの入口に追加する。
  6. 取り出されたインスタンスを、再びキューの入口から追加する。

追加の情報を得る

Peers APIで得られるのはインスタンスのホスト名のみである。ここでは、インスタンスのさまざまな情報のうち、自動的に取得できるものを紹介する。

/api/v1/instance

/api/v1/instance で得られる情報には、以下のものがある。

  • インスタンスの名称
  • インスタンスの説明文
  • 連絡先メールアドレス
  • バージョン
  • 登録ユーザー数
  • トゥート数
  • 接続インスタンス数
  • サムネイル画像
  • トゥートの最大字数

登録ユーザー数は、あまりに簡単に取得できるがゆえに濫用された指標である。

サムネイル画像を真面目に設定しているインスタンスは少数である。しかし、結月ゆかりインスタンスサムネイル画像は素晴らしい。

トゥートの最大字数を報告するのはPleromaの独自機能である。マストドンでのイシュープルリクエストは不穏になっている。

/api/v1/instance/activity

/api/v1/instance/activity と /api/v1/instance/peers は同時期に開発され、マストドン2.1.1から有効になった。/api/v1/instance/activity で取得できる情報は以下。

  • 週間トゥート数
  • 週間アクティブユーザー数
  • 週間新規ユーザー数

一例として、分散SNSフォーラムの流速順インスタンス一覧は、インスタンスの名称、サムネイル画像、週間トゥート数を用いている。

将来の課題

悪意のあるインスタンスが、無意味なホスト名を大量に羅列した /api/v1/instance/peers を送信することで、DoS攻撃が可能だと思う。

まとめ

インスタンス一覧は /api/v1/instance/peers を使えば30分くらいで作れる。あと、インスタンス管理者はサムネイル画像を設定してくれ。