mastodon on Ubuntu 22.04

現行main.ruby-version3.0.3だが、ruby<3.1はOpenSSL3系に対応しておらず、3系がデフォルト化したUbuntu 22.04ではrbenv installすると失敗する。 3.1.2等ならビルドは可能だが、次はbundle install時にopenssl gemのビルドに失敗するため、これは解決にならない。 そこで https://www.openssl.org/source/からopenssl-1.1.1nをダウンロードしてビルドして使わせる。

wget https://www.openssl.org/source/openssl-1.1.1n.tar.gz
tar -xf openssl-1.1.1n.tar.gz
cd openssl-1.1.1n
sudo mkdir /opt/openssl-1.1.1n
sudo mkdir /usr/local/ssl
sudo chown **** /opt/openssl-1.1.1n
sudo chown **** /usr/local/ssl
./config --prefix=/opt/openssl-1.1.1n --openssldir=/usr/local/ssl
make -j2
make test
make install
RUBY_CONFIGURE_OPTS="--with-openssl-dir=/opt/openssl-1.1.1n" rbenv install 3.0.3
cd /path/to/mastodon
bundle install

これで一応動くものの、mastodonRuby 3.1対応や、openssl gem(に依存しているwebauthn gem)の更新がされ次第、OS付属のものに乗り換えたい。