truss は、端的に説明すれば、画像変換 CLI・サーバー・WASM である(紹介記事はこちら)。いつの間にか Drupal(WordPress のような CMS)モジュールのバックエンド候補として検討されているようで、機能追加要望があった。不思議な話でもあり、PHP の GD や ImageMagick を差し置いて、何故 truss が選ばれているのか。ネットで検索したら、答えが出てきた。
機能追加の依頼者は Drupal GovCon(2026年)で発表しており、「Drupal モジュールが高速な Rust 製 CLI を 管理して直接起動し、結果を静的成果物として保存すればよい」旨の考えを示していた。truss も Rust 製 CLI であるため、この方の戦略とマッチしていたのだろう。ImageMagick は機能的に圧倒的に優れているが、配布が少し面倒だ。単一バイナリではなく、かつランタイム環境によって考慮すべき事柄があるため、ユーザーが戸惑う場面が増える。Rust 製 CLI であれば、バイナリポンッが簡単にできる。
…..というゲスパーをする必要も実はなく、具体的な説明が truss を利用しているライブラリの説明に書かれていた。
和訳:マネージドホスティングでは、GDのWebP/AVIFサポートやImageMagickが全く含まれていない状態で出荷されることが多く、どちらかをインストールするにはサポートチケットを発行するか、そもそもインストールするオプションがないのが一般的です。Better Image Optimizerはこのギャップを回避します。trussモジュール独自のコード内でバージョンとSHA-256によって固定された単一の静的リンクバイナリを取得し、それをプライベートファイルシステムに保存し、Symfony Processを介してシェルから実行します。