@204504bySE なるほど!
主に、Fediverseへの関心に基づいた投稿を行うアカウントです。DTP・印刷に関する話をしたり、同人の話をしたり、カレーをブーストしたりします。
Mastodonのcollaborator(開発者の一員)です。また、独自機能を盛り込んだFedibirdを管理・開発しています!
Mastodonサーバ『fedibird.com』の管理者アカウントでもあります。ご連絡は当アカウントへ、サーバインフォメーションについては https://fedibird.com/about/more と @info を参照してください。
新しいMastodonね、立てた直後に公開登録じゃなくなってるし、管理者とかモデレーターが長いことログインしてないと勝手に登録閉じるようになってるよ。
問題は……管理されてないサーバは、アップデートしない
■ Mastodon v4.3以降で、ImageMagickではなくlibvipsを使うための準備
とりあえず手順だけメモしとく
・有効にするには、8.13以降のlibvipsをインストールして、.env.productionにMASTODON_USE_LIBVIPS=trueを記述する(デフォルトはfalse)
・Ubuntu 22.04 LTSとか20.04 LTSでは、Mastodon v4.3.0以降で対応しているlibvips 8.13以降をaptで入れられない
・Ubuntu 24.04 LTS以降なら大丈夫なので、aptで入れると良い
sudo apt-get install libvips42t64
ソースから入れる場合は……
libvips42が入っていたら削除
sudo apt-get remove libvips42
libcgifを入れる
sudo add-apt-repository ppa:lovell/cgif
sudo apt-get update
sudo apt-get install libcgif-dev
最低限のビルド環境を整える
sudo apt install \
build-essential \
ninja-build \
python3-pip \
bc \
wget
pip3 install meson
sudo pip3 install meson
~/.bash_profileにpipのPATHが記載されていなければ追加
export PATH=$PATH:$HOME/.local/bin
. ~/.bash_profile
/root/.bash_profileにpipのPATHが記載されていなければ追加
export PATH=$PATH:/usr/local/bin
使用する関連ライブラリを入れる
sudo apt install \
libfftw3-dev \
libopenexr-dev \
libgsf-1-dev \
libglib2.0-dev \
liborc-dev \
libopenslide-dev \
libmatio-dev \
libwebp-dev \
libjpeg-turbo8-dev \
libexpat1-dev \
libexif-dev \
libtiff5-dev \
libcfitsio-dev \
libpoppler-glib-dev \
librsvg2-dev \
libpango1.0-dev \
libopenjp2-7-dev \
liblcms2-dev \
libimagequant-dev \
libheif-dev
ソースコードを取得してビルド、インストールする
wget https://github.com/libvips/libvips/releases/download/v8.15.3/vips-8.15.3.tar.xz
tar xf vips-8.15.3.tar.xz
cd vips-8.15.3
meson setup build --libdir=lib --buildtype=release -Dintrospection=disabled
cd build
meson compile
meson test
sudo meson install
スパム自体は連合に流れてこないけど、せっせと分別して捨てる処理はしているので、データベースサーバのロードアベレージが高いままで大変そうだ。頑張れデータベースサーバ。
This account is not set to public on notestock.
This account is not set to public on notestock.
Mastodonのアップデートするときにね、だいたい止めないでいけるんだけどさ、
assets:precompileの時はメモリ不足になりやすいので、余裕のない環境の場合は、Mastodon本体とか停止してから実行すると成功しやすいよ。
エラーでてても気が付かないことも多いんだけど、失敗すると、WebUIがみえなくなったりするので、その場合はやりなおし。
assets:clobber して消してから、あらためてassets:precompileね。
あと、データベースの構造が変わった時に行われるmigrate、メジャーアップデートなら必須なわけだけど、
これも、サーバ動作中にやって良い部分と、駄目な部分がある。
これは分離してあるので、こういう環境変数をつけて実行すると、実行中にやっても大丈夫。
SKIP_POST_DEPLOYMENT_MIGRATIONS=true
で、Mastodon本体を再起動してから、今度は環境変数をつけずに実行すると、やってなかった残りの処理をしてくれる。
まあ、最初から止めて実行する分には一度にやっていいんだけどね!
政府採用は、Mastodonの日本版フォークメンテナの人員(特任チーム)を国で割り当てて、普段は本家に開発参加して精通し、開発予算をMastodonプロジェクトにも支出し、日本側で必要な機能追加したり意見を反映し、どうしても折り合わないところをフォーク側でアレンジし、政府機関ではそのフォーク使え、とかがいいって考えてるよ。
@theoria MastodonのActivityPubには各ユーザー毎のActorはあってもサーバを表すオブジェクトがなかったので、ID: -99の特殊Actorがサーバ毎に定義されたんよ。
例えばNoteをfetchするときのリクエストにinstance.actorで署名したりするので、これをサスペンドするとそのサーバとのやりとりが正常に機能しなくなったりするぜ。
スパム対策にしろ、メジャーアップデートにしろ、トラブルにしろ、少しぐらいサーバ止めてたって構わないんですけど、
その間ブロックするなら、解除も素早くよろしくな。Threads、お前のことやぞ……
@hongminhee CWの警告メッセージをActivityPubのsummaryを割り振っているのがそもそもの間違いというか、目的違うよね、と思うのだけども、
Mastodon側の設計意図としては、代替テキスト(ALT属性)のような、本文を分割した一部ではなく、プレーンテキストで解釈可能な注釈にしたいんだろうけど、
それを他の実装に求めることは難しいよね。
ブログのコンテンツなら本当に抜粋した要約に使いたいし、書式もハッシュタグも含めたい。summaryはsummaryとして使わせてくれ、と思う。
(余談:CW用になっていなければ、私も長文の折りたたみ用の要約文に使いたい)
まあ、ここは互換性が低下してもいいとは思うんで、あとはHolloのポリシー、立ち位置、どこを目指すかだよね。
非互換性の問題は、事情をよく知らない一般のユーザーが影響を受けることだから、慣例に合わせる方が利用者には優しい。
変革を求めるなら、敢えてActivityStreamの仕様に従い、Mastodonと非互換にして、ぶち破った方がいい。
Note、短文を想定してるのに、長すぎない? って話をしたこともあるんだけど、『もう遅い』ってことでして、まあそうだよねーと思ったりしたこともあるよ!
Fedibirdで本文の文字数あんまり長くしてないのは、もう少しArticleの立場がよくなったらそっちで表現したいよなぁ、というところが引っかかってるのね。
補足:
Note(ActivityPub - Activity Streamsのボキャブラリーの話です)は、best-friends.chatの投稿のような、一文で言い切る程度の内容を想定していて、
Articleが複数行の文章を想定してる。
ところで、Fedibird Matrix(ウチで設置してるMatrixホームサーバ)は今、招待制になってるんだけど、使いたい人がいたら招待発行するので声かけてね。
まあ、試すだけならmatrix.orgに登録するんでいいと思うよ。
@hyoyoshikawa 合ってますよ。まぁこのあたりになるかなと、ある程度予想しつつ聞いてみたんですが、やっぱりみんな、あんまり増えない・増やさないって感じですよね。