noellabo's tech blog

@noellaboの技術ブログ

Ubuntu 21.04でPleroma/OTP

Pleromaは、ソースコードを改造しないで使うなら、プレコンパイル済みのバイナリをインストールするのが推奨されています。ソースからだと、Elixirのコンパイルめっちゃ時間かかるからねー。 MastodonやMisskeyでインストールやアップデートに苦労することを…

CentOS Stream 8でPleroma

昨日、CentOS 7でPleromaという記事(メモ)を書きましたが、こちらはCentOS Stream 8版です。 ハマりポイントは、powertoolsを有効にしてfile-develを入れておけ、ということぐらいですかね。cmakeも忘れずに。 Installing on CentOS Stream 8 Prepare the …

CentOS 7でPleroma

Pleroma、もうCentOSへのインストール方法は公式にサポートしていない(ドキュメントが削除された)ようなんですが、まぁ動かないわけではないので、現時点のインストール手順をメモしておきます。CentOS 7用です。 追記:CentOS Stream 8でPleromaというメ…

MastodonのAPIでブックマークをエクスポートする

Mastodon v3.3.0から、ブックマークのインポート・エクスポートに対応しています。 もしあなたのサーバがv3.1.0以降、v3.3.0未満の場合は、APIで取得して、自力で書き出してしまいましょう。 bookmark_exporterの作成 何で書こうかと思いましたが、まぁPytho…

ローカルタイムラインを無くす

Fedibirdで採用している、ローカルタイムラインを取り除くコードを独立させたものを用意しました。Mastodon v3.3.0用になっています。 変更内容はGithubの該当コミットを参照してください。 github.com cherry-pickの仕方 git fetch https://github.com/fedi…

Mastodonにテーマを追加する

Mastodonを自分で設置している人は、テーマ作ってみたいですよね。テーマ。やってみましょう! 手順 だいたいこんな感じです。順番に説明します。 テーマの名前を考える ベースにするスタイルを決める ベースから変更する差分のscssを書く テーマの一覧に追…

マストドンのサークルとコミュニティの話

Mastodonが取り組んでいる開発中の機能(サークル)と、Fedibirdのグループ(コミュニティ)機能の現状についてざっくりご紹介

Mastodonの開発活動について

この投稿は、Fediverse Advent Calendar 2020の25日目の記事です。 (あれ、のえるさん、今は26日の夜で、そろそろ27日になりそうじゃないですか? おかしいですね?) 普段は利用者として、あるいは運営者として関わっているMastodonですが、もう一つ、開発…

同人誌とか好きだから!

(木村先生画像略) この投稿は、あなたの好きはどこから?の6日目の記事です。 昨日、TAMAコミに行ってきました。同人印刷所の株式ポプルスと有限会社ねこのしっぽが開催する、そうさく系総合表現イベントです。同人誌即売会ですね。 Fediverseの面々も参加…

知見を共有する場が欲しかった

この投稿は、ブログについて語るアドベントカレンダー Advent Calendar 2020の3日目の記事です。 ブログを書く理由・書き始めたきっかけなどを語る場であるということなので、思いついたことをつらつらと書いてみようと思う。 いわゆるエッセイで、駄文の類…

Fedibirdのグループ機能について

FedibirdをマージしたQOTOと、グループサーバ 先日、英語圏のMastodonサーバのひとつであるQOTOがアップデートしまして、Fedibirdのほとんどのコードをマージしました。ローカルタイムラインを無効にするところ以外って感じかな。 QOTOではFedibirdの機能の…

PostgreSQLを動かしているOSをアップグレードするとデータベースが壊れることがある

TLDR Locale data changes - PostgreSQL wiki を読むべし glibcが2.28以前から以降に更新される際に、ロケールによる照合順序の変更の影響を受け、インデックスが壊れる 誤ったパーティションに書き込んでしまうことがある Ubuntu 18.04以前から18.10、20.04…

Qrunchサービス終了とはてなブログ移転

Qrunchのサービスが2020年10月31日で終了してしまいまして、とても寂しいです。 Qrunchは、とても肌に合うサービスでした。 終了するということで代替サービスを検討しましたが、やはりQrunchの代わりとして選べるものはありませんでした。 Zennに移った人は…

DeliveryFailureTrackerがホスト単位になりました

以前に書いたMastodonが配送に失敗したジョブに対処する仕組みとDeliveryFailureTrackerで閉鎖したサーバに対処するの続きです。 死んでいるサーバに配送してしまう問題が解決 これまでinboxのURLで配送失敗を記録していたため、主に投稿の配送に使うshared_…

DeliveryFailureTrackerで閉鎖したサーバに対処する

以前に書いたMastodonが配送に失敗したジョブに対処する仕組みの続きです。 追記:Mastodon v3.1.4以降は仕様が変わっています。続きの記事もあわせてお読みください。 DeliveryFailureTrackerがホスト単位になりました DeliveryFailureTrackerの仕組み Deli…

Mastodonが配送に失敗したジョブに対処する仕組み

追記:Mastodon v3.1.4以降は仕様が変わっています。続きの記事もあわせてお読みください。DeliveryFailureTrackerで閉鎖したサーバに対処する / DeliveryFailureTrackerがホスト単位になりました Mastodonのサーバで投稿やブーストが行われると、フォロワー…

リレーサーバの内部の仕組み

リレーは、ActivityPubを用いて、Activityを中継する比較的単純なサーバプログラムです。 MastodonやPleromaなどのActivityPubサーバからリレーに接続を行い、お互いにやりとりできることを確認します。接続が確立できたら、Activityの送受信を開始します。 …

Mastodon v3.1.0、node v10.13以上が必要だってよ

いろいろ面倒くさいので、この際、nodenvを使って切り替えましょうか。 nodejsとyarnをnodenvでインストールする mastodonユーザーでログインした状態にします。 sudo -iu mastodon nodenvを取ってきます。 git clone https://github.com/nodenv/nodenv.git …

Pixelfedのオブジェクトストレージ対応

オブジェクトストレージの有効化 Pixelfedは主に写真を投稿するサービスであるが、まだオブジェクトストレージに保存する機能は完成していない。しかし、ほとんどできあがっていて、動くことは動く。 .envへの記述 .envに次のように記述する PF_ENABLE_CLOUD…

Fedibirdってなに?(紹介)

この記事は、Fedibird Advent Calendar 2019の1日目の記事です。 ひとまず導入として、Fedibirdについて改めて説明しておこうと思います。 Fedibirdは、SNS・マイクロブログ機能を提供するWebサービスの一つです。 短い文章や写真やイラスト・映像・音声を投…

Wasabiの障害に悩まされている小規模Mastodonサーバのための機能拡張と運用の提案

wasabiと上手に付き合おう 安くて嬉しい我らがオブジェクトストレージwasabiですが、たびたび不安定になってツライという悩みどころがあります。そこで、Mastodonにちょっとだけ手を加え、運用を工夫して、上手に付き合っていこうという提案です。(どのオブ…

Misskeyのサーバを設置する(v11系)

Misskeyは、自分でサーバを用意して設置することで、自分の好きなように運営することができます。 当記事では、Misskey v11以降の設置方法について、具体例を交えて紹介します。 用意するモノ Misskeyを実行するサーバ ドメイン メールサーバー オブジェクト…

Mastodon用にRedisインスタンスを複数立ち上げる

ここでは、Debian / UbuntuでMastodonを実行しているという前提で説明します。 最新版をインストールする 複数のインスタンスを立ち上げる 環境を整備する 最新版をインストールする 基本的にapt install redisだけでイケるんですが、最新版がインストールさ…

3年目を迎えるにあたっての雑感など

この記事は、S.H.さん主催のMastodon Golden Week Calendarの2日目の記事です。 昨日1日目の記事は7_nanaさんの最近のマストどすについてでした。 ゴチャゴチャ色々考えていたんだけど、結構息苦しい内容になってしまったので、書き直しました。雑感というこ…

Elasticsearch 7.0 をMastodonでムリヤリ使う

別に、どうしても elasticsearch 7.0 を使いたい理由なんて無いんですが、まぁ、面白そうじゃないですかw おさらい Mastodonは、chewyというgemを使ってElasticsearchに対応しています chewyは、elasticsearch-rubyというgemを使っています elasticsearch-ru…

ElasticsearchをMastodonとは別のサーバに設置する

新しくVPSを借りたので、そこにElasticsearchのサーバをたてたい! という話がありました。 よい機会なので、Elasticsearchのインストールからsudachiを使えるようにする設定変更まで、ざっくり記録しておこうと思います。 Elasticsearchをインストールする …

Let's Encrypt(certbot)で、TLS-SNI-01の削除により証明書の更新に失敗する問題への対応

さくらのクラウド Mastodonスタートアップスクリプトなどで2017年8月15日以前にサーバを立てた人は、2019年2月15日にTLS-SNI-01での証明書取得ができなくなったことを受け、更新に失敗して慌てているのではないかと思います。また、さくらのクラウドに限らず…

インスタンスの役割とリレーのもたらすもの

この記事は、ぐすくまさん主催のMastodon Advent Calendar 2018の10日目の記事です。 昨日9日目の記事はろーかるゆーざーさんのMastodonは「きっかけ」 | WWW.BLUECORE.NETでした。 おはようございます。のえる@DTP鯖管です。 DTP-Mstdn.jpというDTP・デザイ…

v2.7.4からv2.8.0にアップデートするのが難しいのはなぜか?

Mastodon v2.8.0 がリリースされましたが、v2.7.4にgit merge v2.8.0するのはちょっとまってください。自動でマージすることができず、コンフリクトします。 https://dtp-mstdn.jp/@noellabo/101904394306319396 更新の方法・注意点は、毎回リリースページに…

Mastodonからの、ハッシュタグリレーへの参加の仕方

Mastodonからハッシュタグリレーに参加する ハッシュタグリレーとは ハッシュタグリレーは、ハッシュタグ付きの投稿を参加者にリレーするリレーサービスです。 https://hashtag-relay.dtp-mstdn.jp/ ここでは、主にMastodonから参加する方法を説明します。 …