ログボ
主に、Fediverseへの関心に基づいた投稿を行うアカウントです。DTP・印刷に関する話をしたり、同人の話をしたり、カレーをブーストしたりします。
Mastodonのcollaborator(開発者の一員)です。また、独自機能を盛り込んだFedibirdを管理・開発しています!
Mastodonサーバ『fedibird.com』の管理者アカウントでもあります。ご連絡は当アカウントへ、サーバインフォメーションについては https://fedibird.com/about/more と @info を参照してください。
このアカウントは、notestockで公開設定になっていません。
このアカウントは、notestockで公開設定になっていません。
ようやっと落ち着いたので、間に合わせでやっつけてきたことをちゃんと処理し始めてる。
やはり間に合わせは間に合わせで、考慮すべきことがたくさん抜けているね。
Mastodonなどを改造した時の、ソースコードの公開の話?
公開を求められた時だけ対応するのはかまわないけど、普段やらないでいるっていうことは、いざやるときに大変だよね?
(要求してきた人を悪し様にいう誰かを思い出しながら)
なので、こういうのは自動化しておきます。
そもそも大元がGithubなど公開の場で開発していて、それをソースコードへのリンクにして示しているので、真似するのが楽です。
Mastodonの場合は、.env.productionにこう書きます。
GITHUB_REPOSITORY=fedibird/mastodon
こまめに更新してる場合はそれだけだと足りないので、
SOURCE_TAG=1e3a607067e610e30300fd1c4b09379febde3795
というようにコミットハッシュも示します。
再起動スクリプトにこれを仕込んで自動化すれば絶対に忘れません。
echo "SOURCE_TAG=`git rev-parse HEAD`" > /home/mastodon/.env.extra
mastodon-webにこれを仕込んであります。
[Service]
EnvironmentFile=/home/mastodon/.env.extra
フサギコさんが、誰も手がつけられなくなっていたMastodonのフロントエンドの書き換え(近代化)に着手されているのは であります。
2016年頃に最初に書かれたコードをベースに改築していっているので、何か新しい仕組みを作ろうと思った時に、基礎が古かったり合理的でなかったりするために、今もいろいろ苦労しています。(全体を整合させるために、ある程度既存コードにあわせた書き方をするしかない)
実は、全部一気に変えちゃおうぜ、っていうプルリクはこれまでも何度かありましたが、テスト可能な範囲で少しずつ変更を入れていくというアプローチをとった人はいなかったので、これまでのものは受理できなかったんですね。
そういう意味でも、今回はすごいのです。
--
マストドンのコード、特にフロントエンドをなんとかしたい、あるいはなんとかしている - このIP網の片隅で
https://fusagiko.hatenablog.jp/entry/2023/05/05/134347
そうそう、古いまま=悪い、で捉えるかなと思うので補足しておくけど、
Mastodonが保守的なのは凄くメリットが大きくて、
2017年にアカウントつくって久しぶりに戻ってきた人も普通に使える学習コストの低さ(解説記事も長く使える)、
CSS書いてもDOM構造が大きく変わらないのであまり手を入れずに長く使えるし、
APIも大きな改訂時にはv2を増やしたりして後方互換性を維持するようになっているし、
(書き方が悪い例を除けば)クライアントアプリもずっと使えたりしますよね。
フォーク勢も、追従でそれほど苦労せずにやってこれています。
長期メンテナンスされているコードなので、あらかたバグもつぶされていて、新たに入りにくい。
たとえば操作ボタンなどのアイコンのフォント(Font Awesomeっていうのを使ってます)も、新しいバージョンがいくつもあるんですが、これまでと大きくイメージが変わらないよう、わざと古いものを使い続けていたりします。
#fedibird #fedibird_info またちょっとコードと設定いじってるので、画像の表示おかしくなったりしますけど、お待ちくださいませー