Mastodonのカスタム方法

標準

Mastodonのインスタンスを構築する方法は検索すれば山ほどヒットするので、その分資料が少ないインスタンスのカスタム方法について今日は説明します。インスタンスの構築する方法についての記事はや「Mastodon(マストドン)のインスタンスをCentOS7で立ててみる」、「CentOS7でmastodonを建てる」辺りを見れば完璧ではないかなと思います。

追記:以下のサイトもとても参考になります。

ちなみに私が運営するmastodonのインスタンスは haruhi-mstdn.club ですので、よろしくお願いします。

表示される言葉のカスタム

config/locales に入っている大量の言語ファイルをカスタムしていくことで新たな言語(語録集)や表示される文言を簡単に変えることが出来ます。

---
ja:
  about:
    about_mastodon: Mastodon は<em>自由でオープンソース</em>なソーシャルネットワークです。商用プラットフォームの代替となる<em>分散型</em>を採用し、あなたのやりとりが一つの会社によって独占されるのを防ぎます。信頼できるインスタンスを選択してください — どのインスタンスを選んでも、誰とでもやりとりすることができます。 だれでも自分の Mastodon インスタンスを作ることができ、シームレスに<em>ソーシャルネットワーク</em>に参加できます。
    about_this: ご利用前にお読みください
    apps: アプリ
    business_email: 'メールアドレス:'
    closed_registrations: 現在このインスタンスでの新規登録は受け付けていません。
    contact: 連絡先
    description_headline: "%{domain} とは?"
    domain_count_after: 個のインスタンス
    domain_count_before: 接続中
    features:
      api: アプリやその他サービスにAPIを公開
      blocks: 豊富なブロックやミュート機能
      characters: 1つの投稿は500文字まで利用可能
      chronology: 時系列順のタイムライン
      ethics: 広告もトラッキングもありません
      gifv: GIFVや短い動画にも対応
      privacy: 投稿ごとに公開範囲を細かく設定可能
      public: 公開タイムライン
    features_headline: Mastodon の特徴
    get_started: 参加する
    links: リンク
    other_instances: 他のインスタンス
    source_code: ソースコード
    status_count_after: トゥート
    status_count_before: トゥート数
    terms: プライバシーポリシー
    user_count_after: 人
    user_count_before: ユーザー数
(以下略)

画像のカスタム

うちのインスタンスはアニメ愛好家向けだからゾウさんなんか表示しないで自分の推しキャラを出したい!という方におすすめです。Mastodonで使われる画像は app/assets/images app/javascript/images に格納されています。ここに代わりの画像を置いてあげることで任意の画像を背景やトップページのゾウさんの代わりに表示させることが出来ます。最終的には以下のような感じになれば正解です。

CSSとJavaScriptのカスタム

これも同じように app/assets/stylesheets app/javascript/stylesapp/assets/javascripts app/javascript/mastodon に格納されている.scssファイルと.jsファイルをを編集することで変更することが出来ます。私の場合、背景が左揃いになっているのが気に食わなかったので、中央揃い(background-position:50% 50%;)にするなどのカスタムをしました。

最後に反映させよう

画像、CSS、JavaScriptファイルは動的なサイトにするため(?)に圧縮されています。この圧縮過程を飛ばしてしまうと反映はいつまで経ってもされないので忘れないようにします。
まずは実際にMastodonで使えるようにメディアファイル集assetsを作成します。コマンドラインに以下のように打ち込みます。

//assetsフォルダを全消去したい場合。全てをやり直したい人向け。
# docker-compose run --rm web rails assets:clobber

//assetsフォルダにある昔のものを消去したい場合。普段はこっちで十分かな。
# docker-compose run --rm web rails assets:clean

//上の2つのコマンドのうちどちらかを実行したら、メディアファイル群を事前コンパイルする。
# docker-compose run --rm web rails assets:precompile

//mastodon全体を再ビルド
# docker-compose build

//mastodonを再起動
# docker-compose restart

追記(2017/07/06):Mastodonをスタートアップスクリプトで立ち上げた場合はdockerを使わないのでこちらのご指摘の通りやってみてください。

これで色々とカスタムの幅が広がったので、自分だけのインスタンスを発展させていってください。それでは。

追記(2017/04/28):当ブログの記事を見て、「出来なかった!」「困った!」といった問題があればコメントをお願いします。

追記(2017/06/18):Mastodon 1.4.1からディレクトリ構造に色々と変更が加わった、という旨のご報告をいただきましたので最新の情報に更新しました。ご報告ありがとうございました。

Mastodonをはじめよう

標準

1週間ほど前から日本国内でアツくなり始めたMastodon(マストドン)。このページでは始め方や仕組み、各プラットフォーム(iOS, Android, Windows, Linux, MacOS…)でのクライアントなどを紹介、説明していきます。

Mastodonとは?

Mastodonは他のSNSでは見られない「分散型」という仕組みを採用しています。個人でも企業でも誰でも簡単にそれぞれの拠点となる「インスタンス」を立ち上げることが出来て、それぞれのインスタンスがそれぞれのサービスとして機能します。それぞれが独立して機能していますので、それぞれのインスタンスが各管理者の意向で動きます。意向というのは例えば運営方針や、メンテナンスのタイミング、話題などです。

と言っても、各インスタンスが独立しているからと言ってそれぞれのインスタンス同士でコミュニケーションがとれないというわけではありません。多くのインスタンスは数百ものインスタンスと「連合」を組んでおり、その連合を組んでいるインスタンス同士であれば普段からフォローをしていなくても「トゥート」をお互いに見ることも可能ですし、連合を組んでいないインスタンス同士でも、「リモートフォロー」をすることで新たにそのインスタンス同士で連合を組むことが出来ます。

このようにオープンソースであることを最大限まで活用して運営されているMastodon。これからも目が離せない新サービスになりそうです。

インスタンスを選ぶ

次は自分が登録するインスタンスを選びましょう。単純にSNSとしてのMastodonを楽しみたいのであれば日本人の多いインスタンスの方がきっと楽しいでしょうし、専門の分野について話したいのであればそれに適したインスタンスを選ぶと良いでしょう。そんな感じにインスタンスを決めるためにインスタンス一覧がいくつか用意されています。ぜひ活用してください。

日本だけでも結構ジャンル別のインスタンスに別れてるんですね。私は「mstdn.jp」と「x0r.be」と「pawoo.net」の3つのインスタンスに登録しています。なお、現段階ではアカウント削除については対応していないので、くれぐれも注意してください。また、無名の海外のインスタンスに登録したりすると凄くアウェー感あふれることになるかもしれない点も注意が必要です。

クライアントを使おう

いざMastodonを頻繁に使おうとしても、いちいちブラウザからインスタンスにアクセスしているようでは通信容量も多くなりますし、なにより面倒です。そこで使うのが専用クライアント。これを使うことでより一層便利にMastodonを使うことが出来ますので、ぜひ利用してみては。

対応 クライアント名 備考
Android Tusky Androidでは見た感じ最もポピュラーなクライアント。
11t
TootyFruity リリース前なので不安定。
iOS Amaroq 現在はこれしかiOSはありません。
Windows Capella 開発途上なので私の環境では結構不安定でした。
Mastodon UWP app UWP版です。他に比べるとまだほとんど機能はありません。
Windows/Linux/Mac Web-based Desktop Client デスクトップで単独アプリとして楽しめます。結構安定しています。

ブラウザ拡張でより賢く

この章はChromeユーザー対象の文になってしまいますが、ご容赦ください。Chromeには拡張機能が用意されていて、それを使うことでMastodonをより便利に、賢く使うことが出来ます。

とりあえずTooterです。この拡張機能は普段Twitterを使っている方は簡単にTwitterとMastodonの両方に同じ内容を投稿することが出来ます。いちいち画面を切り替えて投稿していて、煩わしい思いをしている方には嬉しい機能です。公式ページ(twitter.comの一部)でのツイート、tweetdeckの両方で使うことが出来ます。



最後に

Mastodonの成長は1週間でmstdn.jpのユーザー数が7万人を超えるほど、めまぐるしい成長を遂げました。これからも暫くはその成長は衰えることは無いでしょう。初期の方はあまりの急成長さで新規会員の登録を中止したり、サーバーを急遽補強したり色々と大変でした。今では7万人を越すユーザー数を獲得している過去にも、途中で全ユーザーのデータが吹っ飛んで0からのスタートを2回していますが、これだけユーザー数が集まるってのは相当ですよね。それだけの魅力があるのだから、これから先もサービスも含めて更に成長していくことを心から願っています。